diff --git a/.github/workflows/java.yml b/.github/workflows/java.yml index 4c144955fbe..b19d7d8d13a 100644 --- a/.github/workflows/java.yml +++ b/.github/workflows/java.yml @@ -57,7 +57,7 @@ jobs: strategy: fail-fast: false matrix: - jdk: [8, 11, 17, 20] + jdk: [8, 11, 17, 21] include: - jdk: 8 title: AMD64 Debian 9 Java JDK 8 Maven 3.5.4 @@ -71,10 +71,10 @@ jobs: title: AMD64 Ubuntu 22.04 Java JDK 17 Maven 3.9.3 maven: 3.9.3 image: eclipse-java - - jdk: 20 - title: AMD64 Ubuntu 22.04 Java JDK 20 Maven 3.9.3 - maven: 3.9.3 - image: eclipse-java + - jdk: 21 + title: AMD64 Ubuntu 22.04 Java JDK 21 Maven 3.9.4 + maven: 3.9.4 + image: amazon-java env: JDK: ${{ matrix.jdk }} MAVEN: ${{ matrix.maven }} diff --git a/docker-compose.yml b/docker-compose.yml index 62e5aee0a84..3d25d3ade8b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -138,6 +138,7 @@ x-hierarchy: - debian-java - debian-js - eclipse-java + - amazon-java - fedora-cpp: - fedora-python - python-sdist @@ -1705,6 +1706,18 @@ services: volumes: *java-volumes command: *java-command + amazon-java: + # Usage: + # docker-compose build amazon-java + # docker-compose run amazon-java + # Parameters: + # MAVEN: 3.9.4 + # JDK: 21 + image: ${ARCH}/maven:${MAVEN}-amazoncorretto-${JDK} + shm_size: *shm-size + volumes: *java-volumes + command: *java-command + ############################## Integration ################################## conda-integration: diff --git a/java/flight/flight-sql-jdbc-core/pom.xml b/java/flight/flight-sql-jdbc-core/pom.xml index 106d4f968db..34d7c268187 100644 --- a/java/flight/flight-sql-jdbc-core/pom.xml +++ b/java/flight/flight-sql-jdbc-core/pom.xml @@ -107,14 +107,14 @@ org.mockito mockito-core - 4.11.0 + ${mockito.core.version} test org.mockito mockito-inline - 4.11.0 + ${mockito.inline.version} test diff --git a/java/flight/flight-sql-jdbc-driver/pom.xml b/java/flight/flight-sql-jdbc-driver/pom.xml index 1fd9222be37..03fb22db960 100644 --- a/java/flight/flight-sql-jdbc-driver/pom.xml +++ b/java/flight/flight-sql-jdbc-driver/pom.xml @@ -68,14 +68,14 @@ org.mockito mockito-core - 4.11.0 + ${mockito.core.version} test org.mockito mockito-inline - 4.11.0 + ${mockito.inline.version} test diff --git a/java/flight/pom.xml b/java/flight/pom.xml index b1e1f4d3174..b6b84278c19 100644 --- a/java/flight/pom.xml +++ b/java/flight/pom.xml @@ -52,4 +52,17 @@ + + + + pin-mockito-jdk8 + + 1.8 + + + 4.11.0 + 4.11.0 + + + diff --git a/java/pom.xml b/java/pom.xml index cbfe723436a..b5ec6a61a7e 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -44,8 +44,10 @@ 2 true 9+181-r4173-1 - 2.16 + 2.22.0 3.10.1 + 5.5.0 + 5.2.0 diff --git a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java index c44d106f536..ee619cf617a 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java @@ -112,13 +112,14 @@ public static ValueVector decode(ValueVector indices, Dictionary dictionary, Buf * @param valueCount dictionary vector valueCount. * @return index type. */ + @SuppressWarnings("ComparisonOutOfRange") public static ArrowType.Int getIndexType(int valueCount) { Preconditions.checkArgument(valueCount >= 0); if (valueCount <= Byte.MAX_VALUE) { return new ArrowType.Int(8, true); } else if (valueCount <= Character.MAX_VALUE) { return new ArrowType.Int(16, true); - } else if (valueCount <= Integer.MAX_VALUE) { + } else if (valueCount <= Integer.MAX_VALUE) { //this comparison to Integer.MAX_VALUE will always evaluate to true return new ArrowType.Int(32, true); } else { return new ArrowType.Int(64, true);