Kirill,

Thank you for driving this discussion and implementation.

A few points from my side:
* Agree that it will be best to keep the strategy interface private because
it will be very dependent on the persistent storage implementation. We
would need to expose page IDs and types to public API, which is very
restrictive. The configuration part obviously needs to be public, and
ability to pull the strategy implementation from plugin is a good idea.
* I was also thinking of adding the warmup configuration straight to the
IgniteConfiguration, but I like Stan's idea of adding it to
DataRegionConfiguration. No strong preference here.
* I do not think we need to deprecate preloadPartition() method. One of the
use-cases for this method was to process partitions sequentially while a
node is running. This method is able to fetch the partition from disk much
(from times to orders of magnitude) faster than sequential scan.
* Being able to cancel the warmup during startup is a great feature. We
should be able to support it from control.sh because the warmup runs before
discovery which starts the last, so the control.sh handler should be
already running.

Reply via email to