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

Restore API Compat for PerformanceEvaluation.generateValue()

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.98.0, 0.98.1, 0.99.0, 0.98.2
    • 0.99.0, 0.98.3
    • Client
    • Reviewed
    • Hide
      Adds back a deprecated #generateValue(Random) function to restore API compatibility.
      Show
      Adds back a deprecated #generateValue(Random) function to restore API compatibility.

    Description

      Observed:

      A couple of my client tests fail to compile against trunk because the method PerformanceEvaluation.generateValue was removed as part of HBASE-8496.

      This is an issue because it was used in a number of places, including unit tests. Since we did not explicitly label this API as private, it's ambiguous as to whether this could/should have been used by people writing apps against 0.96. If they used it, then they would be broken upon upgrade to 0.98 and trunk.

      Potential Solution:
      The method was renamed to generateData, but the logic is still the same. We can reintroduce it as deprecated in 0.98, as compat shim over generateData. The patch should be a few lines. We may also consider doing so in trunk, but I'd be just as fine with leaving it out.

      More generally, this raises the question about what other code is in this "grey-area", where it is public, is used outside of the package, but is not explicitly labeled with an AudienceInterface.

      Attachments

        1. HBASE_10251_v3.patch
          0.9 kB
          Dima Spivak
        2. HBASE-10251-v2.patch
          0.7 kB
          Dima Spivak
        3. HBASE_10251.patch
          0.9 kB
          Dima Spivak

        Activity

          People

            dimaspivak Dima Spivak
            aleksshulman Aleksandr Shulman
            Votes:
            0 Vote for this issue
            Watchers:
            11 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: