1e06139584
We changed the way we manage engine memory buffers to an open model where each shard can essentially has infinite memory. The indexing memory controller is responsible for moving memory to disk when it's needed. Yet, this doesn't work today when we recover from store/translog since the engine is not fully initialized such that IMC has no access to the engine, neither to it's memory buffer nor can it move data to disk. The biggest issue here is that translog recovery happends inside the Engine constructor which is problematic by itself since it might take minutes and uses a not yet fully initialzied engine to perform write operations on. This change detaches the translog recovery and makes it the responsibility of the caller to run it once the engine is fully constructed or skip it if not necessary. |
||
---|---|---|
.. | ||
fixtures | ||
framework | ||
logger-usage | ||
build.gradle |