Saving data with persistent feeders

When PersistentFeeders=T, and a cube that uses rules is saved, the feeders are stored along side the cube data in a .feeders file.

The cube files are called cube-name.cub and cube-name.feeders.

When a cube is loaded, if a .feeders file exists, it is read to re-load the feeders and normal feeder evaluation is skipped. If the feeders file does not exist normal feeder calculation occurs and the .feeders file is written after all the feeders have been calculated. This is the behavior the first time the TM1® server is brought up on a data directory with the PersistentFeeders=T. As part of the server startup the .feeders files for all the relevant cubes will be written. A new persistent feeders files is written for any cube for which the persistent feeders file is not found at server startup. This means that the .feeders files may be deleted from the data directory to force a complete re-calculation of feeders when the server next starts. For more information on how to delete a feeder, see Deleting persistent feeders.

The modified time of the .feeders file is compared to that of the base cube file at load time. If the cube file is newer than the feeders file, the .feeders file is regarded as invalid and is deleted. The .feeders file is always written after the cube file so it should always be newer than the cube file.

Note: When rules for a cube are modified, the feeders for the rules associated with that cube are re-run to pick up any changes in the feeder statements in the rules file.