You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@iotdb.apache.org by "HTHou (via GitHub)" <gi...@apache.org> on 2026/09/09 09:15:01 UTC

[PR] Build: Replace obsolete Thrift Maven plugin [iotdb]

HTHou opened a new pull request, #18612:
URL: https://github.com/apache/iotdb/pull/18612

   ## Description
   
   Apache Thrift removed the unmaintained `thrift-maven-plugin` in https://github.com/apache/thrift/pull/3789. Replace IoTDB's use of it with the standard `maven-antrun-plugin`, retaining the existing compiler download and `thrift.exec.absolute.path` override.
   
   Ant's `apply` task invokes the compiler once per matching IDL without a platform-specific shell. Preserve the Java, Python, Go and C# generator options, file filters and output locations, skip empty file sets, and fail the build on compiler errors. Read `common.thrift` from the sibling source directory so clean reactor compilation does not require dependency JARs to be packaged first. Register local IDL resources with `build-helper-maven-plugin` so binary and source JARs continue to include them; existing Java source-root registration remains in place.
   
   ## Validation
   
   Validated all five protocol modules (Commons, DataNode, ConfigNode, Consensus and AINode) and their reactor parents on macOS ARM64 / JDK 17:
   
   - `mvn clean package -pl <five protocol modules> -am -DskipTests` passed.
   - `mvn clean test-compile -pl <five protocol modules> -am -DskipTests -P with-zh-locale -Ddevelocity.cache.local.enabled=false` passed with all 123 goals executed and no build-cache reuse.
   - Compared SHA-256 hashes against a clean build using the old plugin: all 636 generated files are byte-for-byte identical (481 Java, 37 Python, 7 Go and 111 C# files).
   - Verified the expected IDL names and contents in all 10 binary/source JARs.
   - Verified a custom compiler path containing spaces succeeds and a compiler returning a nonzero exit status fails the build.
   - `mvn spotless:check -N` and `git diff --check` passed.
   
   - [x] This PR has been self-reviewed.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org