Skip to content

Releases don't seem to match the source tree #2816

Description

@plaflamme

Context: I'm trying to obtain this particular fix #2483 which is present since 1.15.0. So bumping to the latest 1.19.0 should provide this fix, but it doesn't seem to be the case.

After taking a closer look, it seems like the code in the git repository does not line up with what is being released.

Specifically, if we use this particular line, we can confirm that the fix is indeed on the release-1.19.0 branch.

Then, if we download the released source jar, we can see that this fix is not present. Here's the equivalent lines from that other file:

  private static Filters.Filter LIMIT_ONE =
      FILTERS.chain().filter(FILTERS.limit().cellsPerRow(1)).filter(FILTERS.value().strip());

And indeed, decompiling that class from the 1.19.0 release jar, we can see this content in the static section:

  static {};
    Code:
       0: getstatic     #7                  // Field com/google/cloud/bigtable/data/v2/models/Filters.FILTERS:Lcom/google/cloud/bigtable/data/v2/models/Filters;
       3: invokevirtual #8                  // Method com/google/cloud/bigtable/data/v2/models/Filters.chain:()Lcom/google/cloud/bigtable/data/v2/models/Filters$ChainFilter;
       6: getstatic     #7                  // Field com/google/cloud/bigtable/data/v2/models/Filters.FILTERS:Lcom/google/cloud/bigtable/data/v2/models/Filters;
       9: invokevirtual #9                  // Method com/google/cloud/bigtable/data/v2/models/Filters.limit:()Lcom/google/cloud/bigtable/data/v2/models/Filters$LimitFilter;
      12: iconst_1
      13: invokevirtual #10                 // Method com/google/cloud/bigtable/data/v2/models/Filters$LimitFilter.cellsPerRow:(I)Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;
      16: invokevirtual #11                 // Method com/google/cloud/bigtable/data/v2/models/Filters$ChainFilter.filter:(Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;)Lcom/google/cloud/bigta
ble/data/v2/models/Filters$ChainFilter;
      19: getstatic     #7                  // Field com/google/cloud/bigtable/data/v2/models/Filters.FILTERS:Lcom/google/cloud/bigtable/data/v2/models/Filters;
      22: invokevirtual #12                 // Method com/google/cloud/bigtable/data/v2/models/Filters.value:()Lcom/google/cloud/bigtable/data/v2/models/Filters$ValueFilter;
      25: invokevirtual #13                 // Method com/google/cloud/bigtable/data/v2/models/Filters$ValueFilter.strip:()Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;
      28: invokevirtual #11                 // Method com/google/cloud/bigtable/data/v2/models/Filters$ChainFilter.filter:(Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;)Lcom/google/cloud/bigtable/data/v2/models/Filters$ChainFilter;
      31: putstatic     #2                  // Field LIMIT_ONE:Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;
      34: return

Where you can still see the inclusion of the ValueFilter.strip() filter:

25: invokevirtual #13                 // Method com/google/cloud/bigtable/data/v2/models/Filters$ValueFilter.strip:()Lcom/google/cloud/bigtable/data/v2/models/Filters$Filter;

There seems to be an issue with the release process and it appears to have started around 1.15.0 since none of those include the fix that I'm particularly interested in.

As a side note, the HEAD of the release-1.19.0 branch actually refers to version 1.15.0 somehow. In fact, the "release" commit seems to have used the wrong version. It seems related, but perhaps that's just a side effect of some other issue.

Metadata

Metadata

Assignees

Labels

api: bigtableIssues related to the googleapis/java-bigtable-hbase API.priority: p1Important issue which blocks shipping the next release. Will be fixed prior to next release.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions