Repository navigation
DEV-1424: Fix jena-tdb2 compilation against libthrift 0.25.0 - #9
Merged
Merged
Conversation
libthrift 0.25.0 adds the abstract method TTransport.resetMessageSizeAndConsumedBytes(long). TReadAppendFileTransport, the TDB2 node table's file transport, did not implement it, so jena-tdb2 no longer compiled against 0.25.0. Implement it as a no-op, like the other message-size methods in this class. The method is only called by libthrift's framed and file transports, not by the protocols, so TDB2 classes compiled against 0.24.0 keep working at runtime with 0.25.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
cygri
approved these changes
Oct 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #8, still
6.2.0-tq-3: no version bump, since jena-tdb2 and everything after it are not on Nexus yet.libthrift 0.25.0 adds the abstract method
TTransport.resetMessageSizeAndConsumedBytes(long).TReadAppendFileTransport, the TDB2 node table's file transport and the fork's onlyTTransportsubclass, did not implement it, so jena-tdb2 does not compile against 0.25.0. This implements it as a no-op, like the other message-size methods already in that class.How #8 missed it: its verification build ran without
clean, and jena-tdb2 reported "Nothing to compile - all classes are up to date", so its tests ran on classes compiled against 0.24.0. The cleandeployfailed at jena-tdb2, after the parent through jena-tdb1 had been published; those modules are unaffected by this change.Runtime: in libthrift 0.25.0 the method is only called by the framed and file transports, never by the protocols, so TDB2 classes compiled against 0.24.0 — including stock Jena and our tq-2 — keep working with 0.25.0.
Validation (all from
clean)clean test-compilesucceeds (Fuseki UI's yarn build skipped).After merge: resume the deploy with
-rf :jena-tdb2, then tagjena-6.2.0-tq-3on this merge commit.Not set to auto-merge:
base-jena-6.2.0is unprotected, so auto-merge would merge immediately.🤖 Generated with Claude Code