[ https://issues.apache.org/jira/browse/IGNITE-6843?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ozerov updated IGNITE-6843: ------------------------------------ Description: Inspired by Oracle {{NOLOGGING}} option [1]. When index is being created through {{CREATE INDEX}} command, every single index update is written to WAL. Let's introduce special mode where updates are not written to WAL: 1) Index updates are not written to WAL 2) When index is ready, force checkpoint and wait for it to happen 3) Purge index data if node crashed before checkpoint Alternatively, we may even not trigger a checkpoint, hoping that that node will not crash before the nearest checkpoint is finished. If node crashed during this time window, index should be marked as "invalid", and not used for queries. Then user should either re-create or rebuild it. [1] https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_5010.htm#i2182589 was: When index is being created through {{CREATE INDEX}} command, every single index update is written to WAL. Let's introduce special mode where updates are not written to WAL: 1) Index updates are not written to WAL 2) When index is ready, force checkpoint and wait for it to happen 3) Purge index data if node crashed before checkpoint Alternatively, we may even not trigger a checkpoint, hoping that that node will not crash before the nearest checkpoint is finished. If node crashed during this time window, index should be marked as "invalid", and not used for queries. Then user should either re-create or rebuild it. > SQL: optionally do not use WAL when executing CREATE INDEX > ---------------------------------------------------------- > > Key: IGNITE-6843 > URL: https://issues.apache.org/jira/browse/IGNITE-6843 > Project: Ignite > Issue Type: Task > Security Level: Public(Viewable by anyone) > Components: sql > Affects Versions: 2.3 > Reporter: Vladimir Ozerov > Labels: iep-1, performance > Fix For: 2.4 > > > Inspired by Oracle {{NOLOGGING}} option [1]. > When index is being created through {{CREATE INDEX}} command, every single > index update is written to WAL. Let's introduce special mode where updates > are not written to WAL: > 1) Index updates are not written to WAL > 2) When index is ready, force checkpoint and wait for it to happen > 3) Purge index data if node crashed before checkpoint > Alternatively, we may even not trigger a checkpoint, hoping that that node > will not crash before the nearest checkpoint is finished. If node crashed > during this time window, index should be marked as "invalid", and not used > for queries. Then user should either re-create or rebuild it. > [1] > https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_5010.htm#i2182589 -- This message was sent by Atlassian JIRA (v6.4.14#64029)