Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MONDRIAN: Introduce SegmentCacheManager, and actor (aka active object…
…) that manages the global (JVM) and external cache. This is a development checkpoint. The code builds and runs, but fails many tests; in particular, it runs out of memory because we need to limit the number of cell requests passed from the statement to the actor in each load request. Also, there are many clean-ups left to do. See the long list in the javadoc of SegmentCacheManager. Details: 1. Move functionality Aggregation to Segment. Long-term, Aggregation should not be used as a 'gatekeeper' to Segment, and maybe should not exist at all. Remove Aggregation fields columns and axes. 2. Rename Aggregation.Axis to SegmentAxis. 3. Remove Segment.setData and instead split out subclass SegmentWithData. Now segment is immutable. You don't have to wait for its state to change. You wait for a Future<SegmentWithData> to become ready. 4. Remove methods: RolapCube.checkAggregateModifications, RolapStar.checkAggregateModifications, RolapSchema.checkAggregateModifications, RolapStar.pushAggregateModificationsToGlobalCache, RolapSchema.pushAggregateModificationsToGlobalCache, RolapCube.pushAggregateModificationsToGlobalCache. 5. Add new implementations of Future: CompletedFuture and SlotFuture. [git-p4: depot-paths = "//open/mondrian-release/pacino/": change = 14762]
- Loading branch information
1 parent
c1ce101
commit 600e17f
Showing
42 changed files
with
3,123 additions
and
1,744 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.