Hi Alexander
Thanks for the log report & share.  I guess we did not handle
the NotServingRegionException for hbase:meta correctly, says when a client
encounter a NotServingRegionException from hbase:meta, it won't try to
relocate the hbase:meta location. (in 1.4.8)
Let me have a check.

On Wed, Aug 14, 2019 at 1:11 AM Alexander Batyrshin <0x62...@gmail.com>
wrote:

>  Hello,
> We’ve got problem with hbase:meta that cause several servers to die.
> Our version is HBase-1.4.8
>
> prod006 - flush hbase:meta and move it:
>
> Aug 13 15:46:23 prod006 hbase[63435]: 2019-08-13 15:46:23,019 INFO
> [prod006,60020,1564942121270_ChoreService_1] regionserver.HRegionServer:
> prod006,60020,1564942121270-MemstoreFlusherChore requesting flush of
> hbase:meta,,1.1588230740 because info has an old edit so flush to free WALs
> after random delay 226,666 ms
> Aug 13 15:50:09 prod006 hbase[63435]: 2019-08-13 15:50:09,709 INFO
> [MemStoreFlusher.1] regionserver.HRegion: Finished memstore flush of ~2.99
> KB/3064, currentsize=0 B/0 for region hbase:meta,,1.1588230740 in 24ms,
> sequenceid=323883, compaction requested=false
> Aug 13 15:58:10 prod006 hbase[63435]: 2019-08-13 15:58:10,943 INFO
> [StoreCloserThread-hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0.-1]
> regionserver.HStore: Closed info
> Aug 13 15:58:10 prod006 hbase[63435]: 2019-08-13 15:58:10,951 INFO
> [StoreCloserThread-hbase:meta,,1.1588230740-1] regionserver.HStore: Closed
> info
> Aug 13 15:58:10 prod006 hbase[63435]: 2019-08-13 15:58:10,976 INFO
> [RS_CLOSE_META-prod006:60020-0] regionserver.HRegion: Closed
> hbase:meta,,1.1588230740
> Aug 13 15:58:10 prod006 hbase[63435]: 2019-08-13 15:58:10,979 INFO
> [RS_CLOSE_REGION-prod006:60020-0] regionserver.HRegion: Closed
> hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0.
> Aug 13 15:58:10 prod006 hbase[63435]: 2019-08-13 15:58:10,979 INFO
> [RS_CLOSE_REGION-prod006:60020-0] regionserver.HRegionServer: Adding moved
> region record: d3d9ad37f8506c02a84458121965c0b0 to
> prod023,60020,1565701089060 as of 147
>
> At this time at master we have this:
>
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,982 INFO
> [AM.ZK.Worker-pool5-t1878] master.RegionStates: Transition {1588230740
> state=PENDING_CLOSE, ts=1565701090850, server=prod006,60020,1564942121270}
> to {158823074
> 0 state=CLOSED, ts=1565701090982, server=prod006,60020,1564942121270}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,982 INFO
> [AM.-pool3-t178] master.AssignmentManager: Setting node as OFFLINED in
> ZooKeeper for region {ENCODED => 1588230740, NAME => 'hbase:meta,,1',
> STARTKEY => '', ENDKEY => ''}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,982 INFO
> [AM.-pool3-t178] master.RegionStates: Transition {1588230740 state=CLOSED,
> ts=1565701090982, server=prod006,60020,1564942121270} to {1588230740
> state=OFFLINE, ts=1565701090982, server=prod006,60020,1564942121270}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,984 INFO
> [AM.ZK.Worker-pool5-t1879] master.RegionStates: Transition
> {d3d9ad37f8506c02a84458121965c0b0 state=PENDING_CLOSE, ts=1565701090871,
> server=prod006,60020,1564942121270} to {d3d9ad37f8506c02a84458121965c0b0
> state=CLOSED, ts=1565701090984, server=prod006,60020,1564942121270}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,984 INFO
> [AM.-pool3-t178] master.AssignmentManager: Assigning
> hbase:meta,,1.1588230740 to prod023,60020,1565701089060
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,984 INFO
> [AM.-pool3-t178] master.RegionStates: Transition {1588230740 state=OFFLINE,
> ts=1565701090982, server=prod006,60020,1564942121270} to {1588230740
> state=PENDING_OPEN, ts=1565701090984, server=prod023,60020,1565701089060}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,985 INFO
> [AM.-pool3-t179] master.AssignmentManager: Setting node as OFFLINED in
> ZooKeeper for region {ENCODED => d3d9ad37f8506c02a84458121965c0b0, NAME =>
> 'hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0.',
> STARTKEY => '', ENDKEY => ''}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,985 INFO
> [AM.-pool3-t179] master.RegionStates: Transition
> {d3d9ad37f8506c02a84458121965c0b0 state=CLOSED, ts=1565701090984,
> server=prod006,60020,1564942121270} to {d3d9ad37f8506c02a84458121965c0b0
> state=OFFLINE, ts=1565701090985, server=prod006,60020,1564942121270}
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,986 INFO
> [AM.-pool3-t179] master.AssignmentManager: Assigning
> hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0. to
> prod023,60020,1565701089060
> Aug 13 15:58:10 prod001 hbase[14953]: 2019-08-13 15:58:10,986 INFO
> [AM.-pool3-t179] master.RegionStates: Transition
> {d3d9ad37f8506c02a84458121965c0b0 state=OFFLINE, ts=1565701090985,
> server=prod006,60020,1564942121270} to {d3d9ad37f8506c02a84458121965c0b0
> state=PENDING_OPEN, ts=1565701090986, server=prod023,60020,1565701089060}
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,039 WARN
> [AM.-pool3-t179] master.AssignmentManager: Failed assignment of
> hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0. to
> prod023,60020,1565701089060, waiting a little before trying on the same
> region server try=1 of 10
> Aug 13 15:58:11 prod001 hbase[14953]:
> org.apache.hadoop.hbase.ipc.ServerNotRunningYetException:
> org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server
> prod023,60020,1565701089060 is not running yet
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.checkOpen(RSRpcServices.java:1320)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.openRegion(RSRpcServices.java:1707)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:22737)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2380)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:297)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:277)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RemoteWithExtrasException.instantiateException(RemoteWithExtrasException.java:95)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RemoteWithExtrasException.unwrapRemoteException(RemoteWithExtrasException.java:85)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.protobuf.ProtobufUtil.makeIOExceptionOfException(ProtobufUtil.java:368)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRemoteException(ProtobufUtil.java:330)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.master.ServerManager.sendRegionOpen(ServerManager.java:787)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:2248)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1694)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.master.AssignCallable.call(AssignCallable.java:48)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> java.util.concurrent.FutureTask.run(FutureTask.java:266)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> java.lang.Thread.run(Thread.java:748)
> Aug 13 15:58:11 prod001 hbase[14953]: Caused by:
> org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.ipc.ServerNotRunningYetException):
> org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server
> prod023,60020,1565701089060 is not running yet
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.checkOpen(RSRpcServices.java:1320)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.openRegion(RSRpcServices.java:1707)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:22737)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2380)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:297)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:277)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.AbstractRpcClient.onCallFinished(AbstractRpcClient.java:386)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.AbstractRpcClient.access$100(AbstractRpcClient.java:94)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.AbstractRpcClient$3.run(AbstractRpcClient.java:409)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.AbstractRpcClient$3.run(AbstractRpcClient.java:405)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.Call.callComplete(Call.java:103)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.Call.setException(Call.java:118)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.BlockingRpcConnection.readResponse(BlockingRpcConnection.java:600)
> Aug 13 15:58:11 prod001 hbase[14953]:         at
> org.apache.hadoop.hbase.ipc.BlockingRpcConnection.run(BlockingRpcConnection.java:334)
> Aug 13 15:58:11 prod001 hbase[14953]:         ... 1 more
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,217 INFO
> [AM.ZK.Worker-pool5-t1882] master.RegionStates: Transition {1588230740
> state=PENDING_OPEN, ts=1565701090984, server=prod023,60020,1565701089060}
> to {1588230740 state=OPENING, ts=1565701091217,
> server=prod023,60020,1565701089060}
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,244 INFO
> [AM.-pool3-t179] master.AssignmentManager: Assigning
> hbase:namespace,,1516784579153.d3d9ad37f8506c02a84458121965c0b0. to
> prod023,60020,1565701089060
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,391 INFO
> [AM.ZK.Worker-pool5-t1883] master.RegionStates: Transition
> {d3d9ad37f8506c02a84458121965c0b0 state=PENDING_OPEN, ts=1565701091244,
> server=prod023,60020,1565701089060} to {d3d9ad37f8506c02a84458121965c0b0
> state=OPENING, ts=1565701091391, server=prod023,60020,1565701089060}
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,666 INFO
> [AM.ZK.Worker-pool5-t1884] master.RegionStates: Transition {1588230740
> state=OPENING, ts=1565701091217, server=prod023,60020,1565701089060} to
> {1588230740 state=OPEN, ts=1565701091666,
> server=prod023,60020,1565701089060}
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,666 INFO
> [AM.ZK.Worker-pool5-t1884] coordination.ZkOpenRegionCoordination: Handling
> OPENED of 1588230740 from prod001,60000,1565179968855; deleting unassigned
> node
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,668 INFO
> [AM.ZK.Worker-pool5-t1886] master.RegionStates: Offlined 1588230740 from
> prod006,60020,1564942121270
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,805 INFO
> [AM.ZK.Worker-pool5-t1887] master.RegionStates: Transition
> {d3d9ad37f8506c02a84458121965c0b0 state=OPENING, ts=1565701091391,
> server=prod023,60020,1565701089060} to {d3d9ad37f8506c02a84458121965c0b0
> state=OPEN, ts=1565701091805, server=prod023,60020,1565701089060}
> Aug 13 15:58:11 prod001 hbase[14953]: 2019-08-13 15:58:11,807 INFO
> [AM.ZK.Worker-pool5-t1889] master.RegionStates: Offlined
> d3d9ad37f8506c02a84458121965c0b0 from prod006,60020,1564942121270
>
>
> From this moment hbase:meta and hbase:namespace is moved to prod023 from
> prod006
>
> But some other servers still try to get hbase:meta from prod006:
>
> Aug 13 16:02:24 prod021 hbase[103657]: 2019-08-13 16:02:24,832 INFO
> [regionserver/prod021/10.73.65.28:60020-splits-1564981231292]
> client.RpcRetryingCaller: Call exception, tries=10, retries=350,
> started=38462 ms ago, cancelled=false,
> msg=org.apache.hadoop.hbase.NotServingRegionException: Region hbase:meta,,1
> is not online on prod006,60020,1564942121270
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.regionserver.HRegionServer.getRegionByEncodedName(HRegionServer.java:3086)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.getRegion(RSRpcServices.java:1271)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:2197)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:36617)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2369)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:297)
> Aug 13 16:02:24 prod021 hbase[103657]: #011at
> org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:277)
> Aug 13 16:02:24 prod021 hbase[103657]:  row
> ‘IDX,\x1Abb6f7662-275e-459d-b0f3-7fd6aac9b6a4\x0000000046218537kV0WbJ_\x00\x13\x80\x00\x01k\x90\xFEzH\x00\x00\x00\x00,1562868892011.a215bcc7b396e5d08563f0a4183ba5cc.44'
> on table 'hbase:meta' at region=hbase:meta,,1.1588230740,
> hostname=prod023,60020,1565701089060, seqNum=0
>
> ….
>
> Aug 13 16:21:41 prod021 hbase[103657]: 2019-08-13 16:21:41,136 INFO
> [regionserver/prod021/10.73.65.28:60020-splits-1564981231292]
> client.RpcRetryingCaller: Call exception, tries=68, retries=350,
> started=1194772 ms ago, cancell
> ed=false, msg=org.apache.hadoop.hbase.NotServingRegionException: Region
> hbase:meta,,1 is not online on prod006,60020,1564942121270
> Aug 13 16:21:41 prod021 hbase[103657]: 2019-08-13 16:21:41,146 INFO
> [regionserver/prod021/10.73.65.28:60020-splits-1564981231292]
> regionserver.SplitRequest: Running rollback/cleanup of failed split of
> IDX,\x1Abb6f7662-275e-459d-b0f3-7fd6aac9b6a4\x0000000046218537kV0WbJ_\x00\x13\x80\x00\x01k\x90\xFEzH\x00\x00\x00\x00,1562868892011.a215bcc7b396e5d08563f0a4183ba5cc.;
> callTimeout=1200000, callDuration=1214938:
> org.apache.hadoop.hbase.NotServingRegionException: Region hbase:meta,,1 is
> not online on prod006,60020,1564942121270
> Aug 13 16:21:41 prod021 hbase[103657]: 2019-08-13 16:21:41,193 FATAL
> [regionserver/prod021/10.73.65.28:60020-splits-1564981231292]
> regionserver.HRegionServer: ABORTING region server
> prod021,60020,1564943354635: Abort; we got an error after point-of-no-return
>
> The same picture on other crashed servers
>
>
> Any ideas why this happened and how to prevent this in future?

Reply via email to