Details
Description
When we was developing https://issues.apache.org/jira/browse/IGNITE-18087 some tests on restart started to fail on the assertion
assert rev >= appliedRevision : IgniteStringFormatter.format(
in ConfigurationCatchUpListener.
It means that we have inconsistency when we compare storage revision from configuration and revision from the event. Needed to investigate.
UPD:
We made a fix in DistributedConfigurationStorage#resolveRevision and added else section were we initialised master key with 0 when there was no changes in configuration, but some puts to the metastorage were done, so the DistributedConfigurationStorage#resolveRevision method returned wrong non-null revision for the configuration. But seems that this is not enough and we still get some failed tests.
We fail we the assertion
assert data.isEmpty() || cfgRevision > 0;
in DistributedConfigurationStorage#readDataOnRecovery0 (see muted test ItDistributedConfigurationStorageTest#testRestartWithPds)
or get exception
if (revision <= appliedRevision) { throw new MetaStorageException(DEPLOYING_WATCH_ERR, String.format( "Current revision (%d) must be greater than the revision in the Vault (%d)", revision, appliedRevision )); }
in
MetaStorageManager#storeEntries (see muted test ItTablesApiTest#testGetTableFromLaggedNode)
Attachments
Issue Links
- blocks
-
IGNITE-18087 Populate DistributionZoneManager with CMG listeners to logical topology events
- Resolved
- is related to
-
IGNITE-18429 ItTablesApiTest#testTableAlreadyCreatedFromLaggedNode is flaky
- Resolved
- links to