Questions concerning save data behaviour
1. Is it correct that if a cube is flagged to be written during a
save data all that it does NOT matter if there was only 1 cell changed
or 1,000,000 cells changed it will write the entire cube to disk?
2. It does NOT write any rule values does it?
3. Would the Thread that was running the Save Data All if a user was access a
cube show a ?wait? state? Or does it just look like it is running?
1. Yes, this is correct
2. rule calculated cells (and non-rule consolidations) are computed in
memory on demand and not serialized to disk. Therefore when you load a
TM1 Server, only the 'floor' of leaves are loaded into memory.
3. Under certain conditions, the Thread that was running the Save Data
All would show "wait" state. Please refer to
TM1 Reference 9.5.2.
SaveDataAll commits all changes a chore makes prior to calling the SaveDataAll function.
While a chore is running, it accumulates locks on the objects it accesses.
The commit operation initiated by the SaveDataAll function temporarily releases all these locks. Once the commit is complete, SaveDataAll reacquires all the locks it had before so it can continue to access the objects it was working on.
There is a brief window during the commit operation where the locks are released and another user or
TurboIntegrator process could delete objects the original chore was using. When the original chore attempts to reacquire the locks on those objects, the objects will not be available and the chore will cease processing".