-
Notifications
You must be signed in to change notification settings - Fork 104
Open
Description
Currently, the RAM caching scheme is bound to one caching unit - the chunk. It would be better programming practice to allow Citadel to RAM cache by any mutual exclusive region of blocks, for example, the pancake (a 64x16x64 rectangular prism). The pancake would be a more accurate prediction of which blocks will be queried next because it reflects the fact that each player's query has higher horizontal variance than vertical varience. This is something that Chunk-wise caching gets dead wrong.
We can add this feature in five easy steps:
- Make CitadelCachingDao a genericized class, able to cache by any MutexBlockRegion
- Make the MutexBlockRegion interface
- Make the Pancake implementation of said interface
- Change the current instance of CitadelCachingDao to be with respect to the Pancake type.
- Test to see which MutexBlockRegion type is actually the fastest.
This new feature is by no means urgent, and would be a fun challenge for people new to development to prove themselves and learn bukkit! That's why I'm not assigning or doing it yet.
Metadata
Metadata
Assignees
Labels
No labels