[ 
https://issues.apache.org/jira/browse/IGNITE-22500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Bessonov reassigned IGNITE-22500:
--------------------------------------

    Assignee: Ivan Bessonov

> Remove unnecessary waits when creating an index
> -----------------------------------------------
>
>                 Key: IGNITE-22500
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22500
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Roman Puchkovskiy
>            Assignee: Ivan Bessonov
>            Priority: Major
>              Labels: ignite-3
>
> When creating an index with current defaults (DelayDuration=1sec, 
> MaxClockSkew=500ms, IdleSafeTimePropagationPeriod=1sec), it takes 6-6.5 
> seconds on my machine (without concurrent transactions, on an empty table 
> that was just created).
> According to the design, we need to first wait for the REGISTERED state to 
> activate on all nodes, including the ones that are currently down; this is to 
> make sure that all transactions started on schema versions before the index 
> creation have finished before we start to build the index (this makes us 
> waiting for DelayDuration+MaxClockSkew). Then, after the build finishes, we 
> switch the index to the AVAILABLE state. This requires another wait of 
> DelayDuration+MaxClockSkew.
> Because of IGNITE-20378, in the second case we actually wait longer (for 
> additional IdleSafeTimePropagationPeriod+MaxClockSkew).
> The total of waits is thus 1.5+3=4.5sec. But index creation actually takes 
> 6-6.5 seconds. It looks like there are some additional delays (like 
> submitting to the Metastorage and executing its watches).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to