Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-26869

RSRpcServices.scan should deep clone cells when RpcCallContext is null

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0-alpha-2, 2.4.11
    • 2.5.0, 3.0.0-alpha-3, 2.4.12
    • regionserver
    • None

    Description

      When inspect HBASE-26812, I find that if RpcCallContext is null, RSRpcServices.scan does not set ServerCall.rpcCallback and directly closes RegionScannerImpl, but it does not deep clone the result cells , so these cells may be returned to the ByteBuffAllocator and may be overwritten before the caller reads them, similar as HBASE-26036, and at the same time, if RpcCallContext is null, when RSRpcServices.scan return partial results, it does not invoke RegionScannerImpl.shipped to release the used resources such as HFileScanner, pooled ByteBuffer etc.

      No matter ShortCircuitingClusterConnection should be removed or not, I think this RSRpcServices.scan problem should fix for future maintainability.

      Attachments

        Issue Links

          Activity

            People

              comnetwork chenglei
              comnetwork chenglei
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: