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

Zheng Hu commented on FLINK-14359:
----------------------------------

When I'm running a testing sql query in my standalone env,  I find the 
JobManager will throw a IOException says HBase connection reset by peer: 
{code}
        at 
org.apache.flink.runtime.executiongraph.ExecutionJobVertex.<init>(ExecutionJobVertex.java:270)
        at 
org.apache.flink.runtime.executiongraph.ExecutionGraph.attachJobGraph(ExecutionGraph.java:918)
        at 
org.apache.flink.runtime.executiongraph.ExecutionGraphBuilder.buildGraph(ExecutionGraphBuilder.java:230)
        at 
org.apache.flink.runtime.executiongraph.ExecutionGraphBuilder.buildGraph(ExecutionGraphBuilder.java:106)
        at 
org.apache.flink.runtime.scheduler.SchedulerBase.createExecutionGraph(SchedulerBase.java:222)
        at 
org.apache.flink.runtime.scheduler.SchedulerBase.createAndRestoreExecutionGraph(SchedulerBase.java:199)
        at 
org.apache.flink.runtime.scheduler.SchedulerBase.<init>(SchedulerBase.java:188)
        at 
org.apache.flink.runtime.scheduler.LegacyScheduler.<init>(LegacyScheduler.java:65)
        at 
org.apache.flink.runtime.scheduler.LegacySchedulerFactory.createInstance(LegacySchedulerFactory.java:70)
        at 
org.apache.flink.runtime.jobmaster.JobMaster.createScheduler(JobMaster.java:278)
        at 
org.apache.flink.runtime.jobmaster.JobMaster.<init>(JobMaster.java:266)
        at 
org.apache.flink.runtime.jobmaster.factories.DefaultJobMasterServiceFactory.createJobMasterService(DefaultJobMasterServiceFactory.java:98)
        at 
org.apache.flink.runtime.jobmaster.factories.DefaultJobMasterServiceFactory.createJobMasterService(DefaultJobMasterServiceFactory.java:40)
        at 
org.apache.flink.runtime.jobmaster.JobManagerRunnerImpl.<init>(JobManagerRunnerImpl.java:146)
        ... 10 more
Caused by: 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.RetriesExhaustedException:
 Failed after attempts=3, exceptions:
Tue Oct 15 12:26:27 CST 2019, RpcRetryingCaller{globalStartTime=1571113587249, 
pause=100, retries=3}, 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.MasterNotRunningException:
 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException:
 java.io.IOException: Call to /30.5.17.5:55263 failed on local exception: 
java.io.IOException: Connection reset by peer
Tue Oct 15 12:26:27 CST 2019, RpcRetryingCaller{globalStartTime=1571113587249, 
pause=100, retries=3}, 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.MasterNotRunningException:
 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException:
 java.io.IOException: Call to /30.5.17.5:55263 failed on local exception: 
java.io.IOException: Connection reset by peer
Tue Oct 15 12:26:27 CST 2019, RpcRetryingCaller{globalStartTime=1571113587249, 
pause=100, retries=3}, 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.MasterNotRunningException:
 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException:
 java.io.IOException: Call to /30.5.17.5:55263 failed on local exception: 
java.io.IOException: Connection reset by peer

        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:164)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.HBaseAdmin.executeCallable(HBaseAdmin.java:4447)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.HBaseAdmin.executeCallable(HBaseAdmin.java:4439)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.HBaseAdmin.listTables(HBaseAdmin.java:440)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.HBaseAdmin.listTables(HBaseAdmin.java:424)
        at 
org.apache.flink.addons.hbase.AbstractTableInputFormat.createInputSplits(AbstractTableInputFormat.java:215)
        at 
org.apache.flink.addons.hbase.AbstractTableInputFormat.createInputSplits(AbstractTableInputFormat.java:50)
        at 
org.apache.flink.runtime.executiongraph.ExecutionJobVertex.<init>(ExecutionJobVertex.java:256)
        ... 23 more
Caused by: 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.MasterNotRunningException:
 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException:
 java.io.IOException: Call to /30.5.17.5:55263 failed on local exception: 
java.io.IOException: Connection reset by peer
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$StubMaker.makeStub(ConnectionManager.java:1608)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$MasterServiceStubMaker.makeStub(ConnectionManager.java:1628)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.getKeepAliveMasterService(ConnectionManager.java:1785)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.MasterCallable.prepare(MasterCallable.java:38)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:140)
        ... 30 more
Caused by: 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.shaded.com.google.protobuf.ServiceException:
 java.io.IOException: Call to /30.5.17.5:55263 failed on local exception: 
java.io.IOException: Connection reset by peer
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:335)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient.access$200(AbstractRpcClient.java:94)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:571)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$BlockingStub.isMasterRunning(MasterProtos.java)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$MasterServiceStubMaker.isMasterRunning(ConnectionManager.java:1639)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$StubMaker.makeStubNoRetries(ConnectionManager.java:1577)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation$StubMaker.makeStub(ConnectionManager.java:1599)
        ... 34 more
Caused by: java.io.IOException: Call to /30.5.17.5:55263 failed on local 
exception: java.io.IOException: Connection reset by peer
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.IPCUtil.wrapException(IPCUtil.java:180)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient.onCallFinished(AbstractRpcClient.java:389)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient.access$100(AbstractRpcClient.java:94)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient$3.run(AbstractRpcClient.java:409)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.AbstractRpcClient$3.run(AbstractRpcClient.java:405)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.Call.callComplete(Call.java:103)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.Call.setException(Call.java:118)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.BlockingRpcConnection.closeConn(BlockingRpcConnection.java:676)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.BlockingRpcConnection.readResponse(BlockingRpcConnection.java:642)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.BlockingRpcConnection.run(BlockingRpcConnection.java:334)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
        at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
        at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
        at sun.nio.ch.IOUtil.read(IOUtil.java:197)
        at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
        at 
org.apache.hadoop.net.SocketInputStream$Reader.performIO(SocketInputStream.java:57)
        at 
org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:142)
        at 
org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:161)
        at 
org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:131)
        at java.io.FilterInputStream.read(FilterInputStream.java:133)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
        at java.io.DataInputStream.readInt(DataInputStream.java:387)
        at 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.ipc.BlockingRpcConnection.readResponse(BlockingRpcConnection.java:574)
        ... 2 more
{code}

And after Enable the HBase debug log at server side,  it says: 
{code}
2019-10-15 12:26:27,491 DEBUG 
[RpcServer.reader=4,bindAddress=0.0.0.0,port=55263] ipc.RpcServer: 
RpcServer.listener,port=55263: Caught exception while reading:
org.apache.hadoop.hbase.ipc.UnsupportedCellCodecException: 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.codec.KeyValueCodec
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.setupCellBlockCodecs(RpcServer.java:1892)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.processConnectionHeader(RpcServer.java:1826)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.processOneRpc(RpcServer.java:1947)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.process(RpcServer.java:1790)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.readAndProcess(RpcServer.java:1769)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Listener.doRead(RpcServer.java:955)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.doRunLoop(RpcServer.java:725)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.run(RpcServer.java:701)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: 
org.apache.flink.hbase.shaded.org.apache.hadoop.hbase.codec.KeyValueCodec
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at 
org.apache.hadoop.hbase.ipc.RpcServer$Connection.setupCellBlockCodecs(RpcServer.java:1890)
        ... 10 more
{code}
So seems the HBase key value codec class has been shaded also, the server can 
not find the shaded class now,  let me think how to resolve this issue.

> Create a module called flink-sql-connector-hbase to shade HBase
> ---------------------------------------------------------------
>
>                 Key: FLINK-14359
>                 URL: https://issues.apache.org/jira/browse/FLINK-14359
>             Project: Flink
>          Issue Type: New Feature
>          Components: Connectors / HBase
>            Reporter: Jingsong Lee
>            Assignee: Zheng Hu
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.10.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> We need do the same thing as kafka and elasticsearch to HBase.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to