[ https://issues.apache.org/jira/browse/PHOENIX-3953?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16141303#comment-16141303 ]
Samarth Jain commented on PHOENIX-3953: --------------------------------------- Thanks for the patch, [~jamestaylor]. I have a couple of comments: - With this patch, we are setting the index_disable_timestamp to 0 when the the major compaction is running for the *index* table. I think we would need to do the same when major compaction is running on the data table too. I am not too sure what would happen if major compaction runs on a disabled index. It may or may not be ok. But definitely, major compaction running on a data table when a global mutable index on it is disabled is not good. - I am not too sure if adding this logic to stats collection is the best choice. In fact, I was planning on filing a JIRA where we can have a config which controls whether we should be collecting stats for tables via major compaction. I think it would make sense to just refactor this logic in its own method and call it in the preCompactHook of UngroupedAggregateRegionObserver. > Clear INDEX_DISABLED_TIMESTAMP and disable index on compaction > -------------------------------------------------------------- > > Key: PHOENIX-3953 > URL: https://issues.apache.org/jira/browse/PHOENIX-3953 > Project: Phoenix > Issue Type: Bug > Reporter: James Taylor > Assignee: James Taylor > Labels: globalMutableSecondaryIndex > Fix For: 4.12.0 > > Attachments: PHOENIX-3953.patch > > > To guard against a compaction occurring (which would potentially clear delete > markers and puts that the partial index rebuild process counts on to properly > catch up an index with the data table), we should clear the > INDEX_DISABLED_TIMESTAMP and mark the index as disabled. This could be done > in the post compaction coprocessor hook. At this point, a manual rebuild of > the index would be required. -- This message was sent by Atlassian JIRA (v6.4.14#64029)