-
Notifications
You must be signed in to change notification settings - Fork 94
feat: Only initialize BusinessCalendar caches when data is accessed and improve caching performance #5378
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
feat: Only initialize BusinessCalendar caches when data is accessed and improve caching performance #5378
Changes from 8 commits
Commits
Show all changes
57 commits
Select commit
Hold shift + click to select a range
bc97c74
Only initialize BusinessCalendar caches when data is accessed.
chipkent 4e2e878
Move the calendar to lazy ConcurrentHashMap initialization plus start…
chipkent f3fadc9
Added a thread-safe lazily initialized summary data cache by month an…
chipkent d39dec7
Using advanced caching in the BusinessCalendar v1.
chipkent 52a4521
Fix javadoc warnings.
chipkent ccd9025
Using advanced caching in the BusinessCalendar v2.
chipkent 9f07d91
Using advanced caching in the BusinessCalendar v3.
chipkent 01377ab
Using advanced caching in the Calendar v4. Fixed unit tests.
chipkent c9be433
Fixed exclusive/inclusive problems.
chipkent 3accd32
Spotless.
chipkent 32f5c57
Spotless.
chipkent d1d96df
Copyright header.
chipkent fa69016
Copyright header.
chipkent f5e1e5f
Copyright header.
chipkent bf54c0f
Copyright header.
chipkent 94fa753
A generalized fast concurrent cache.
chipkent 9a47feb
Incorporating generalized cache.
chipkent d50afa4
Incorporating generalized cache.
chipkent 5b0fe54
Incorporating generalized cache.
chipkent d0cde5a
Incorporating generalized cache.
chipkent b12453d
Configs to control fast cache population.
chipkent 9a28928
Spotless
chipkent 51138c7
Add a missing volatile.
chipkent 2399510
More perf tuning.
chipkent c8e9fff
Fixed some locking problems.
chipkent 3d5e500
Spotless
chipkent 11725d7
Fast cache implementation based on a stamped lock.
chipkent cc8e4dc
Removed cache population and clean up code.
chipkent 75283e7
Code self review.
chipkent 359dc05
Spotless
chipkent 4da4729
Moved to a KeyedIntObjectHash.
chipkent 8e92d1e
Moved to a IntFunction.
chipkent 050defa
Spotless
chipkent 64911da
Addressing code review.
chipkent 46320db
Addressing code review.
chipkent 166074c
Addressing code review.
chipkent 3a1c412
Addressing code review.
chipkent 55d43a8
Made cache clearing package private.
chipkent 38f6c0f
Reduced CalendarDay memory usage.
chipkent d1f88ec
Move businessNanos calculation to the constructor for a calendar day.
chipkent 99abd9b
Simplify cache key type definition.
chipkent ab00dfc
Rename cache getter.
chipkent 431a244
Remove poorly designed cache methods
chipkent 46ab5bf
Consolidate year-monty key calculation.
chipkent 5888eee
Consolidate cache key calculations.
chipkent 43e4724
Address review comments.
chipkent 4b26109
Merge remote-tracking branch 'origin/main' into bus_cal_init_speed
chipkent 03ba3bd
Improve method naming.
chipkent d3416ba
Addressing review
chipkent d989315
Addressing review
chipkent cde9ab0
Addressing review
chipkent 130a785
Merge remote-tracking branch 'upstream/main' into bus_cal_init_speed
chipkent e057f00
Addressing review
chipkent 04d21ba
Addressing review
chipkent 502bce0
Fix broken unit tests
chipkent 1c33f1e
Merge remote-tracking branch 'origin/main' into bus_cal_init_speed
chipkent e77fa84
Addressing review comments
chipkent File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.