[ 
https://issues.apache.org/jira/browse/PHOENIX-3947?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16078400#comment-16078400
 ] 

James Taylor commented on PHOENIX-3947:
---------------------------------------

Thanks for the patch, [~samarthjain]. Here's some feedback:
- These lines should not have been removed (as otherwise we'd ignore the 
potential override of these settings):
{code}
-        enableRebuildIndex = 
env.getConfiguration().getBoolean(QueryServices.INDEX_FAILURE_HANDLING_REBUILD_ATTRIB,
-            QueryServicesOptions.DEFAULT_INDEX_FAILURE_HANDLING_REBUILD);
-        rebuildIndexTimeInterval = 
env.getConfiguration().getLong(QueryServices.INDEX_FAILURE_HANDLING_REBUILD_INTERVAL_ATTRIB,
-            
QueryServicesOptions.DEFAULT_INDEX_FAILURE_HANDLING_REBUILD_INTERVAL);
-        
{code}
- Add a lower level unit test to PropertiesUtilTest for 
PropertiesUtil.extractProperties()
- IMHO, it's somewhat dangerous/unexpected that 
PropertiesUtil.extractProperties() modifies {{props}} in-place. I think it'd be 
better if it made a new Properties instance by using 
PropertiesUtil.deepCopy(props) and returns the new properties. Make sure all 
occurrences assign the return value (most do, but your particular usage 
doesn't).
- Upon failure of an index to rebuild, we should disable the index and clear 
the INDEX_DISABLE_TIMESTAMP to prevent further retries. You can use 
IndexUtil.setIndexDisableTimeStamp() for this using 0 for the minTimeStamp and 
PIndexState.DISABLE as the newState.

> Increase scan time out for partial index rebuild and retry only once
> --------------------------------------------------------------------
>
>                 Key: PHOENIX-3947
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3947
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: Samarth Jain
>              Labels: globalMutableSecondaryIndex
>         Attachments: PHOENIX-3947.patch, PHOENIX-3947_v2.patch
>
>
> The scan done from MetaDataRegionObserver needs to have a higher timeout so 
> that it can always complete successfully. The retries should be limited to 
> one too. Upon failure, we should disable the index and set the 
> INDEX_DISABLE_TIMESTAMP to zero to prevent further attempts to rebuild the 
> index (as a failure would be an indication that something is awry and manual 
> intervention should be required to rebuild the index completely).



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to