[ https://issues.apache.org/jira/browse/HBASE-1573?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12736458#action_12736458 ]
stack commented on HBASE-1573: ------------------------------ In this case: {code} hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-07-21:2009-07-21 22:49:59,701 INFO org.apache.hadoop.hbase.master.ProcessRegionOpen: updating row nyt,1xNceOaojLkfi-31ZTQSK-==,1248216593259 in region .META.,,1 with with startcode 1248174024124 and server XX.XX.45.124:20020 hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-07-21:2009-07-21 22:50:00,625 DEBUG org.apache.hadoop.hbase.master.BaseScanner: Current assignment of nyt,1xNceOaojLkfi-31ZTQSK-==,1248216593259 is not valid; Server '' unknown. {code} ... there is < 1 second between update and the scanner. Looking at code, I see that region stays in state of transition until after its been updated by the OpenRegionProcess update of .META. with new location. if (info.isOffline() || (serverName != null && this.master.regionManager.regionIsInTransition(info.getRegionNameAsString())) || (serverName != null && this.master.serverManager.isDead(serverName))) { return; } In 1518 I added the serverName to the 2nd line above making it so we fall into the reassignment code if serverName is null (Its null on split and close_region from shell) > Holes in master state change; updated startcode and server go into .META. but > catalog scanner just got old values > ----------------------------------------------------------------------------------------------------------------- > > Key: HBASE-1573 > URL: https://issues.apache.org/jira/browse/HBASE-1573 > Project: Hadoop HBase > Issue Type: Bug > Reporter: stack > Priority: Blocker > Fix For: 0.20.0 > > Attachments: 1573-v2.patch, 1573-v3.patch, 1573.patch > > > Here is example of a scan that takes a while because 6k regions acting on > stale data resulting in double assignment of region: > {code} > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:06,220 INFO org.apache.hadoop.hbase.master.ServerManager: Received > MSG_REPORT_OPEN: enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748: > safeMode=false from XX.XX.45.121:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:06,220 INFO org.apache.hadoop.hbase.master.RegionServerOperation: > enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748 open on XX.XX.45.121:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:06,220 INFO org.apache.hadoop.hbase.master.RegionServerOperation: > updating row enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748 in region > .META.,,1 with with startcode !?B and server XX.XX.45.121:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:06,397 DEBUG org.apache.hadoop.hbase.master.BaseScanner: Current > assignment of enwikibase,Cwj0sehVeEbnrUDR_j0xok==,1245604540748 is not valid; > Server 'XX.XX.44.95:20020' unknown. > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:06,582 INFO org.apache.hadoop.hbase.master.RegionManager: Assigning > region enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748 to XX.XX.45.97:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:09,587 INFO org.apache.hadoop.hbase.master.ServerManager: Received > MSG_REPORT_PROCESS_OPEN: enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748: > safeMode=false from XX.XX.45.97:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:12,614 INFO org.apache.hadoop.hbase.master.ServerManager: Received > MSG_REPORT_OPEN: enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748: > safeMode=false from XX.XX.45.97:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:13,549 INFO org.apache.hadoop.hbase.master.RegionServerOperation: > enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748 open on XX.XX.45.97:20020 > hbase-Powerset-master-aa0-000-8.u.powerset.com.log.2009-06-22:2009-06-22 > 10:56:13,549 INFO org.apache.hadoop.hbase.master.RegionServerOperation: > updating row enwikibase,Cwj1sehVeEbnrUDR_j0xok==,1245604540748 in region > .META.,,1 with with startcode !?? and server XX.XX.45.97:20020 > {code} > We've just updated the server info in the master because of the region open > message but the scan sees old info in the .META. table though .META. was just > updated. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.