HBase
  1. HBase
  2. HBASE-11230

Remove getRowOrBefore from HTableInterface and HTable

    Details

    • Type: Task Task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Implemented
    • Affects Version/s: None
    • Fix Version/s: 0.99.0, 2.0.0
    • Component/s: None
    • Labels:
      None

      Description

      The javadoc for HTable#getRowOrBefore says:

         * @deprecated As of version 0.92 this method is deprecated without
         * replacement.   
         * getRowOrBefore is used internally to find entries in hbase:meta and makes
         * various assumptions about the table (which are true for hbase:meta but not
         * in general) to be efficient.
      

      It's been deprecated long enough. We should remove it from the client API and mark it as private.

        Issue Links

          Activity

          Hide
          Andrew Purtell added a comment -

          I would even suggest doing this in 0.98 except we promised no incompatible client API changes after .0

          Show
          Andrew Purtell added a comment - I would even suggest doing this in 0.98 except we promised no incompatible client API changes after .0
          Hide
          Enis Soztutar added a comment -

          +1 for 0.99. We have reverse scan if anybody wants to use it. We can also remove the implementation in trunk. Nicolas Liochon in HBASE-10018 changed location lookup to use a reverse scan.

          Show
          Enis Soztutar added a comment - +1 for 0.99. We have reverse scan if anybody wants to use it. We can also remove the implementation in trunk. Nicolas Liochon in HBASE-10018 changed location lookup to use a reverse scan.
          Hide
          Jean-Marc Spaggiari added a comment -

          Can we not just replace this with the reverse scan call like in Phoenix? So we keep the feature but remove the implementation?

          Show
          Jean-Marc Spaggiari added a comment - Can we not just replace this with the reverse scan call like in Phoenix? So we keep the feature but remove the implementation?
          Hide
          Anoop Sam John added a comment -

          MetaScanner uses HTable.getRowOrBefore ()

          Show
          Anoop Sam John added a comment - MetaScanner uses HTable.getRowOrBefore ()
          Hide
          Enis Soztutar added a comment -

          MetaScanner uses HTable.getRowOrBefore ()

          We can probably change it to use the reverse scan as well, no?

          Show
          Enis Soztutar added a comment - MetaScanner uses HTable.getRowOrBefore () We can probably change it to use the reverse scan as well, no?
          Hide
          Andrew Purtell added a comment -

          I'm not suggesting removing the method totally. Make it private. Move it somewhere else. Perhaps into MetaScanner.

          Or as Enis says use reversed scanning for MetaScanner instead.

          Show
          Andrew Purtell added a comment - I'm not suggesting removing the method totally. Make it private. Move it somewhere else. Perhaps into MetaScanner. Or as Enis says use reversed scanning for MetaScanner instead.
          Hide
          Enis Soztutar added a comment -

          In HBASE-11797 (subtask of HBASE-10602), we have created a Table interface to replace HTableInterface. I've left out the getRowOrBefore() from Table, but kept it in HTI for 0.99. Hence, I suggest closing this as implemented. What do you guys think? We should remove it from HTI as well?

          Show
          Enis Soztutar added a comment - In HBASE-11797 (subtask of HBASE-10602 ), we have created a Table interface to replace HTableInterface . I've left out the getRowOrBefore() from Table, but kept it in HTI for 0.99. Hence, I suggest closing this as implemented. What do you guys think? We should remove it from HTI as well?
          Hide
          stack added a comment -

          Leaving it in HTI but removing from Table seems safest. I'm good closing this as implemented.

          Show
          stack added a comment - Leaving it in HTI but removing from Table seems safest. I'm good closing this as implemented.
          Hide
          Enis Soztutar added a comment -

          Andrew Purtell you ok with the above plan?

          Show
          Enis Soztutar added a comment - Andrew Purtell you ok with the above plan?
          Hide
          Andrew Purtell added a comment -

          +1

          Show
          Andrew Purtell added a comment - +1
          Hide
          Enis Soztutar added a comment -

          Implemented as a part of HBASE-11797

          Show
          Enis Soztutar added a comment - Implemented as a part of HBASE-11797
          Hide
          Enis Soztutar added a comment -

          Closing this issue after 0.99.0 release.

          Show
          Enis Soztutar added a comment - Closing this issue after 0.99.0 release.

            People

            • Assignee:
              Unassigned
              Reporter:
              Andrew Purtell
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development