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

          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Resolved Resolved
          104d 1h 59m 1 Enis Soztutar 03/Sep/14 01:22
          Resolved Resolved Closed Closed
          171d 23h 12m 1 Enis Soztutar 21/Feb/15 23:34
          Enis Soztutar made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          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.
          Enis Soztutar made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Implemented [ 10 ]
          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
          Enis Soztutar made changes -
          Fix Version/s 2.0.0 [ 12327188 ]
          Hide
          Andrew Purtell added a comment -

          +1

          Show
          Andrew Purtell added a comment - +1
          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
          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 -

          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
          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.
          Enis Soztutar made changes -
          Link This issue relates to HBASE-10856 [ HBASE-10856 ]
          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
          Anoop Sam John added a comment -

          MetaScanner uses HTable.getRowOrBefore ()

          Show
          Anoop Sam John added a comment - MetaScanner uses HTable.getRowOrBefore ()
          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
          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
          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
          Andrew Purtell made changes -
          Field Original Value New Value
          Link This issue is related to PHOENIX-992 [ PHOENIX-992 ]
          Andrew Purtell created issue -

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Development