i cannot tell anything for sure without seeing the complete thing
as there can be various reason onto you issues

but i see something in the code above, i think it can have a problem with memory [but i can be wrong]

public static DataStorage createDatablok() {
DataStorage datablok = new DataStorage();
return datablok;
}

here you create the datablok object inside the function and return it, usually returning local members like objects is not bad, because once the function is over usually the things created with in the function are eligible for gc()
but in this case they will be tied again for a reference, so for me the situation is a bit tricky

better if you define the datablok out of the boudary and return it from the function