cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergio Bossa (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-12039) Add an index callback to be notified post bootstrap and before joining the ring
Date Tue, 02 Aug 2016 12:10:21 GMT


Sergio Bossa commented on CASSANDRA-12039:

I'm writing dtests for all cases requiring a call to the pre-join task, and I noticed the

1) There's a bootstrap test ({{bootstrap_on_write_survey_test}}) that explicitly verifies
the bootstrap state is left in progress after survey mode, so it seems to me we can actually
rely on it to signal the bootstrap status on joining; pinging again [~brandon.williams] for

2) There's one more problem related to calling the pre-join task when joining *without* bootstrapping;
in such case, the node doesn't wait for the migrations to complete (that is, {{MigrationManager#waitUntilReadyForBootstrap()}}
is called only if bootstrapping), so it misses to wait for the new schema containing the column
family, and no task is invoked. Should we run the {{MigrationManager}} checks regardless if
the node is actually streaming or not (I'd say so)? /cc [~beobal] [~iamaleksey]

> Add an index callback to be notified post bootstrap and before joining the ring
> -------------------------------------------------------------------------------
>                 Key: CASSANDRA-12039
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Sergio Bossa
>            Assignee: Sergio Bossa
> Custom index implementations might need to be notified when the node finishes bootstrapping
in order to execute some blocking tasks before the node itself goes into NORMAL state.
> This is a proposal to add such functionality, which should roughly require the following:
> 1) Add a {{getPostBootstrapTask}} callback to the {{Index}} interface.
> 2) Add an {{executePostBootstrapBlockingTasks}} method to {{SecondaryIndexManager}} calling
into the previously mentioned callback.
> 3) Hook that into {{StorageService#joinTokenRing}}.
> Thoughts?

This message was sent by Atlassian JIRA

View raw message