Written by

Question Thomas Kotze · Sep 27, 2022

ZPM Storage on class modified by storage compiler

Hello,

I am getting the following error , and not sure how to get passed this.
We have removed storage on the classes , did a clean compile and still we get the error below on some of the classes
 Compile FAILURE
ERROR! Storage on class [ MyClass] modified by storage compiler, developer should have run ^build to make sure all storage is updated correctly and saved to Perforce

Any Idea how to resolve this or what to look for ?

Regards

Comments

Dmitry Maslennikov · Sep 27, 2022

Why did you remove storage from the classes?

It's an important part of the code. And ZPM mentioned this. All classes have to have storage defined in the code. It will not allow installing without storage.

0
Thomas Kotze  Sep 27, 2022 to Dmitry Maslennikov

Sorry what I meant to say was  is that I removed compiled and saved the storage that was created at compile time. We alwasy keep the storage in tact in the class , Fully aware of the storage importance
Then tried to run load on zpm and still got the error

0
Dmitry Maslennikov  Sep 27, 2022 to Thomas Kotze

So, probably you missed some of the classes, if you use VSCode, import all the code and compile manually and export with VSCode. So, all classes will get storage correctly.

0
Thomas Kotze  Sep 27, 2022 to Dmitry Maslennikov

I have done that before, Just removed all source from namespace , imported , compiled, exported source.
then tried zpm load again. Still getting the same error

0
Dmitry Maslennikov  Sep 27, 2022 to Thomas Kotze

I'm sure that error should point to the particular class, where it found the issue with storage

btw, you may report your issue here.

0
Thomas Kotze  Sep 27, 2022 to Thomas Kotze

Lol Ok , my mistake , I moved / copied the package to a new name and did not remove the old classes , and there was a storage issue on them. 
 Thanks a lot 

0
Eduard Lebedyuk  Sep 27, 2022 to Thomas Kotze

I moved the package to a new name 

Why?

0
Evgeny Shvarov · Sep 27, 2022

Perforce is nothing to do with the case, but I agree with @Dmitry Maslennikov - you shouldn’t deploy classes without storage, it can cause unpredictable and severe errors in case of data structure changes (e.g. if you rename/delete the property).

0
Thomas Kotze  Sep 27, 2022 to Evgeny Shvarov

Sorry what I meant to say was  is that I removed compiled and saved the storage that was created on compile time. We always keep the storage in tact in the class , Fully aware of the storage importance
Then tried to run load on zpm and still got the error
This is a new development and we do know that after it has been deployed you should not delete storage else it can cause issues

0