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

Cleanup HTable public interface

    XMLWordPrintableJSON

Details

    • Umbrella
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • None
    • 0.99.2
    • Client, Usability
    • None

    Description

      HBASE-6580 replaced the preferred means of HTableInterface acquisition to the HConnection#getTable factory methods. HBASE-9117 removes the HConnection cache, placing the burden of responsible connection cleanup on whomever acquires it.

      The remaining HTable constructors use a Connection instance and manage their own HConnection on the callers behalf. This is convenient but also a surprising source of poor performance for anyone accustomed to the previous connection caching behavior. I propose deprecating those remaining constructors for 0.98/0.96 and removing them for 1.0.

      While I'm at it, I suggest we pursue some API hygiene in general and convert HTable into an interface. I'm sure there are method overloads for accepting String/byte[]/TableName where just TableName is sufficient. Can that be done for 1.0 as well?

      Attachments

        1. hbase-10602_v1.patch
          143 kB
          Enis Soztutar

        Issue Links

          There are no Sub-Tasks for this issue.

          Activity

            People

              enis Enis Soztutar
              ndimiduk Nick Dimiduk
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: