You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2017/10/27 08:17:00 UTC
[jira] [Created] (OAK-6876) IndexDisabler should not use
NodeBuilder#isReplaced
Chetan Mehrotra created OAK-6876:
------------------------------------
Summary: IndexDisabler should not use NodeBuilder#isReplaced
Key: OAK-6876
URL: https://issues.apache.org/jira/browse/OAK-6876
Project: Jackrabbit Oak
Issue Type: Bug
Components: indexing
Reporter: Chetan Mehrotra
Assignee: Chetan Mehrotra
Priority: Minor
Fix For: 1.8
{{IndexDisabler}} currently uses NodeBuilder#isReplaced method to check if "disableIndexesOnNextCycle" is set in current flow or not. This is used to ensure that disabling is not done in same cycle as the one where reindexing was done.
{noformat}
//Skip disabling for the cycle where reindexing just got completed
if (idxBuilder.isReplaced(DISABLE_INDEXES_ON_NEXT_CYCLE)){
return emptyList();
}
{noformat}
This method though has issues as it would return true
* If property is only modified. If property is added then it returns false
* Even if the property is not added new it may return true if base state is different object. This happens to be case with SegmentNodeStore and not with others
As a fix we should check explicitly with base state instead of using this api
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)