[To dev/1.3] Upgrade minimum JDK to 17 and migrate JavaX to Jakarta - #18499
[To dev/1.3] Upgrade minimum JDK to 17 and migrate JavaX to Jakarta#18499HTHou wants to merge 2 commits into
Conversation
|
There was a problem hiding this comment.
Pull request overview
Raises IoTDB’s minimum JDK to 17 and migrates REST-related Java EE APIs from JavaX to Jakarta.
Changes:
- Updates build, CI, launchers, examples, and documentation for JDK 17.
- Migrates REST, Servlet, Validation, Jetty, Jersey, Swagger, and generated APIs to Jakarta.
- Updates REST metadata handling and binary dependency licensing.
Reviewed changes
Copilot reviewed 68 out of 68 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
README.md |
Documents JDK 17 requirement. |
README_ZH.md |
Updates Chinese JDK documentation. |
pom.xml |
Updates Java baseline and Jakarta dependencies. |
LICENSE-binary |
Revises bundled dependency inventory. |
library-udf/pom.xml |
Targets Java 17. |
Jenkinsfile |
Selects JDK 17. |
iotdb-protocol/openapi/pom.xml |
Generates Jakarta/Jersey 3 REST code. |
iotdb-core/node-commons/src/assembly/resources/sbin/health_check.sh |
Reports JDK 17 requirement. |
iotdb-core/node-commons/src/assembly/resources/sbin/health_check.bat |
Reports JDK 17 requirement on Windows. |
iotdb-core/node-commons/src/assembly/resources/conf/iotdb-system.properties.template |
Updates OpenAPI endpoint documentation. |
iotdb-core/datanode/src/test/resources/iotdb-system.properties |
Updates test configuration comments. |
iotdb-core/datanode/src/test/resources/iotdb-common.properties |
Updates test configuration comments. |
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/rest/v2/handler/FastLastHandlerTest.java |
Migrates test response imports. |
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/rest/v1/handler/QueryDataSetHandlerTest.java |
Migrates test response imports. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/schedule/CompactionWorker.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/RestService.java |
Migrates Jetty and OpenAPI setup. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/view/visitor/TransformToExpressionVisitor.java |
Migrates JAX-RS exception. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/mtree/impl/pbtree/mnode/container/CachedMNodeContainer.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/mtree/impl/mem/mnode/container/MemMNodeContainer.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/logfile/SchemaLogReader.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/logfile/FakeCRC32Deserializer.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/metedata/read/TimeSeriesSchemaScanNode.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/metedata/read/TimeSeriesCountNode.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/metedata/read/LevelTimeSeriesCountNode.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/unary/InExpression.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/ConfigExecution.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/task/DriverTaskId.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v2/impl/RestApiServiceImpl.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v2/impl/GrafanaApiServiceImpl.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v2/handler/QueryDataSetHandler.java |
Migrates responses and adds result types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v2/handler/FastLastHandler.java |
Migrates response type. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v2/handler/ExceptionHandler.java |
Migrates response status type. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v1/impl/RestApiServiceImpl.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v1/impl/GrafanaApiServiceImpl.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v1/handler/QueryDataSetHandler.java |
Migrates response type. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/v1/handler/ExceptionHandler.java |
Migrates response status type. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/impl/PingApiServiceImpl.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/handler/QueryRowLimitUtils.java |
Migrates response type. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/handler/AuthorizationHandler.java |
Migrates JAX-RS types. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/BasicSecurityContext.java |
Migrates security context. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/AuthorizationFilter.java |
Migrates filters and OpenAPI routing. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/rest/filter/ApiOriginFilter.java |
Migrates Servlet filter APIs. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/resource/memory/PipeDynamicMemoryBlock.java |
Migrates validation annotation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/rest/IoTDBRestServiceConfig.java |
Updates OpenAPI documentation. |
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/audit/AuditLogger.java |
Migrates validation annotation. |
iotdb-core/datanode/src/assembly/resources/sbin/start-datanode.bat |
Enforces JDK 17 on Windows. |
iotdb-core/datanode/src/assembly/resources/conf/datanode-env.sh |
Enforces JDK 17 and simplifies JVM options. |
iotdb-core/datanode/pom.xml |
Uses Jetty EE10 servlet. |
iotdb-core/consensus/pom.xml |
Targets Java 17. |
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/mnode/container/ConfigMNodeContainer.java |
Migrates validation annotation. |
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/schema/ClusterSchemaQuotaStatistics.java |
Migrates validation annotation. |
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/response/cq/ShowCQResp.java |
Migrates validation annotation. |
iotdb-core/confignode/src/assembly/resources/sbin/start-confignode.bat |
Enforces JDK 17 on Windows. |
iotdb-core/confignode/src/assembly/resources/conf/confignode-env.sh |
Enforces JDK 17 and simplifies JVM options. |
iotdb-client/session/src/test/resources/iotdb-common.properties |
Updates OpenAPI endpoint documentation. |
iotdb-client/jdbc/README.md |
Documents JDBC JDK 17 requirement. |
iotdb-client/client-cpp/README.md |
Documents JDK 17 Spotless baseline. |
iotdb-client/client-cpp/pom.xml |
Activates C++ formatting on JDK 17+. |
iotdb-client/cli/src/assembly/resources/sbin/start-cli.sh |
Enforces JDK 17 for Unix CLI. |
integration-test/src/main/java/org/apache/iotdb/it/env/cluster/config/MppBaseConfig.java |
Migrates validation annotation. |
example/pom.xml |
Targets Java 17. |
example/pipe-count-point-processor/pom.xml |
Targets Java 17. |
example/jdbc/pom.xml |
Targets Java 17. |
.github/workflows/sonar-codecov.yml |
Runs analysis on JDK 21. |
.github/workflows/multi-language-client.yml |
Adds JDK 17 setup. |
.github/workflows/daily-ut.yml |
Standardizes daily tests on JDK 17. |
.github/workflows/daily-it.yml |
Removes JDK 8 testing. |
.github/workflows/compile-check.yml |
Removes obsolete JDK 8 workflow. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## dev/1.3 #18499 +/- ##
=============================================
- Coverage 44.80% 44.79% -0.01%
Complexity 198 198
=============================================
Files 3646 3646
Lines 248109 247947 -162
Branches 30596 30582 -14
=============================================
- Hits 111155 111064 -91
+ Misses 136954 136883 -71 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|




Description
Upgrade the minimum JDK version to 17
Migrate Java EE APIs from JavaX to Jakarta
Preserve dev/1.3 compatibility
Verification
mvn -T 1C -pl iotdb-core/datanode -am -DskipTests -Dspotless.skip=true compilemvn -T 1C -pl iotdb-core/datanode -am -Dspotless.skip=true -Dsurefire.failIfNoSpecifiedTests=false -Dtest=QueryDataSetHandlerTest,FastLastHandlerTest testmvn -T 1C -pl iotdb-core/datanode -am -DskipTests spotless:checkmvn -P with-cpp -pl iotdb-client/client-cpp -Dspotless.skip=false spotless:checkThis PR has:
Key changed/added classes (or packages if there are too many classes) in this PR