[
https://issues.apache.org/jira/browse/HBASE-17906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15972391#comment-15972391
]
Albert Lee edited comment on HBASE-17906 at 4/18/17 3:56 PM:
-------------------------------------------------------------
hbase-thrift-17906-ForRecurr.zip is made a little change of
hbase-examples/src/main/python/thrift2 for recurring the problem.
Use the 'DemoClient.py' which in this zip and write data through thrift2
server. When the python run more than 'hbase.thrift.connection.max-idletime',
all connection to server will be interrupted, then thrift2 server did not work
for a while and throw "hbase.ttypes.TIOError: TIOError(_message='Failed 1
action: IOException: 1 time, servers with issues: null location" to
DemoClient.py.
The problem is because when get table from HTablePools in
ThriftHBaseServiceHandler.java, it never refresh the connection which in
connectionCache. Until 'hbase.thrift.connection.max-idletime' come,
connectionCache begin to clean connections which not refreshed. Then the
problem raise.
Problems appeared in the version 0.98. I will test this problem whether exists
in branch 1+ or master.
And sorry about the issue title. It is not a deadlock, it just because
connection does not refresh when getTable. I added patch at the beginning of
this year, mixed is up with another thing.
was (Author: [email protected]):
hbase-thrift-17906-ForRecurr.zip is made a little change of
hbase-examples/src/main/python/thrift2 for recurring the problem.
Use the 'DemoClient.py' which in this zip and write data through thrift2
server. When the python run more than 'hbase.thrift.connection.max-idletime',
all connection to server will be interrupted, then thrift2 server did not work
for a while and throw "hbase.ttypes.TIOError: TIOError(_message='Failed 1
action: IOException: 1 time, servers with issues: null location" to
DemoClient.py.
The problem is because when get table from HTablePools in
ThriftHBaseServiceHandler.java, it never refresh the connection which in
connectionCache. Until 'hbase.thrift.connection.max-idletime' come,
connectionCache begin to clean connections which not refreshed. Then the
problem raise.
Problems appeared in the version 0.98. I will test this problem whether exists
in branch 1+ or master.
And sorry about the issue title. It is not a deadlock, it just because
connection does refresh when getTable.
> When a huge amount of data writing to hbase through thrift2, there will be a
> deadlock error.
> --------------------------------------------------------------------------------------------
>
> Key: HBASE-17906
> URL: https://issues.apache.org/jira/browse/HBASE-17906
> Project: HBase
> Issue Type: Bug
> Components: Client
> Affects Versions: 0.98.21, 0.98.22, 0.98.23, 0.98.24, 0.98.25
> Environment: hadoop 2.5.2, hbase 0.98.20 jdk1.8.0_77
> Reporter: Albert Lee
> Labels: patch
> Fix For: 0.98.21, 0.98.22, 0.98.23, 0.98.24, 0.98.25
>
> Attachments: HBASE-17906.branch-0.98.001.patch,
> HBASE-17906.branch-0.98.002.patch, HBASE-17906.master.001.patch,
> HBASE-17906.master.002.patch, hbase-thrift-17906-ForRecurr.zip
>
>
> When a huge amount of data writing to hbase through thrift2, there will be a
> deadlock error.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)