Huawei-Hadoop / hindex

Secondary Index for HBase
Apache License 2.0
591 stars 286 forks source link

deadlock in put operation #45

Closed JThink closed 10 years ago

JThink commented 10 years ago

Is user region and index region balanced at the same time ?

When put data into Hbase, it cause dead-lock issues, after track the code, i found in HRegion.batchMutate method.

    startRegionOperation();
    if (coprocessorHost != null) {
        coprocessorHost.postStartRegionOperation(); ------a
    }
    try {
        ......
    } finally {
        closeRegionOperation(); ----------b
        if (coprocessorHost != null) {
            coprocessorHost.postCloseRegionOperation();
        }
    }
  ......  

When execute 'a' step, the index region has not been banlanced to this server, it will throw IOException and do not execute 'b' step, then cause the deadlock when closing this region.

Could you check it?

chrajeshbabu commented 10 years ago

Hi This is same as https://github.com/Huawei-Hadoop/hindex/issues/26 Will fix now..Thanks for reporting.

chrajeshbabu commented 10 years ago

@JThink We have fixed #26 now. Can you try it with latest build. Thanks..

JThink commented 10 years ago

@chrajeshbabu Thank you!