WhatIsAnOcttree/Ivy/Citadel: ChunkDataLoadEvent can still occasionally cause blocking data load
- Chunk loads, triggering ChunkDataLoadEvent
- Ivy ticks vines, correctly using the loaded chunk data from ChunkDataLoadEvent
- The vines attempt to grow, triggering BlockSpreadEvent
- Citadel listens to BlockSpreadEvent, and fails to use the data from ChunkDataLoadEvent because it isn't passed in any way.
Because of future completion ordering, a CompletableFuture can run its whenComplete function before CompletableFuture.getOrNull() will return not-null.
Frankly I have no clue how to fix this. Either way it's just slightly slowing down the server; There's no risk for data loss or corruption.
