[
https://issues.apache.org/jira/browse/HBASE-19337?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guanghao Zhang updated HBASE-19337:
-----------------------------------
Assignee: Guanghao Zhang
Status: Patch Available (was: Open)
> AsyncMetaTableAccessor may hang when call ScanController.terminate many times
> -----------------------------------------------------------------------------
>
> Key: HBASE-19337
> URL: https://issues.apache.org/jira/browse/HBASE-19337
> Project: HBase
> Issue Type: Bug
> Reporter: Guanghao Zhang
> Assignee: Guanghao Zhang
> Attachments: HBASE-19337.master.001.patch
>
>
> Code in ScanControllerImpl.
> {code}
> private void preCheck() {
> Preconditions.checkState(Thread.currentThread() == callerThread,
> "The current thread is %s, expected thread is %s, " +
> "you should not call this method outside onNext or onHeartbeat",
> Thread.currentThread(), callerThread);
> Preconditions.checkState(state.equals(ScanControllerState.INITIALIZED),
> "Invalid Stopper state %s", state);
> }
> @Override
> public void terminate() {
> preCheck();
> state = ScanControllerState.TERMINATED;
> }
> {code}
> So if call terminate on a already terminated scan, it will throw
> IllegalStateException.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)