offline index cannot be read, only modified (in scope of index rebuild or regular updates)
index becomes online after index rebuild
Index may be created on cache start, by DDL command or by API call (direct call to IndexManager)
on index create an Index instance is created using provided factory, this way we may introduce geospatial indexes or prefix trees in future just providing specific factory.
sorted index represents a database index in terms of SQL and requires hash index created first (if not exists).
hash index is just a proxy to cache partitions and always online, it represents a table in terms of SQL. This way SQL queries may be executed before index is fully built
...
On index create
...
:
index created - all indexes and definitions registered on all nodes, all indexes starts applying current updates
onIndexCreate() callback executes - index is registered in a query execution engine
index rebuild started - index is filling up with existing data
index rebuild finished - index is ready to use
onIndexStateChange() callback executes - index becomes available for a query execution engine.