diff --git a/.github/workflows/javadoc_sync.yaml b/.github/workflows/javadoc_sync.yaml
index 6177fc9e9f..f3e601feda 100644
--- a/.github/workflows/javadoc_sync.yaml
+++ b/.github/workflows/javadoc_sync.yaml
@@ -28,7 +28,7 @@ jobs:
run: rm -rf com
- name: Copy new files
- run: cp -r target/site/apidocs/* .
+ run: cp -r target/reports/apidocs/* .
- name: Commit files
run: |
diff --git a/athena-dynamodb/pom.xml b/athena-dynamodb/pom.xml
index d1114c06eb..822be08086 100644
--- a/athena-dynamodb/pom.xml
+++ b/athena-dynamodb/pom.xml
@@ -13,7 +13,7 @@
software.amazon.awssdk
bom
- 2.28.1
+ 2.28.11
pom
import
diff --git a/athena-elasticsearch/pom.xml b/athena-elasticsearch/pom.xml
index a71b77df93..13f08500c8 100644
--- a/athena-elasticsearch/pom.xml
+++ b/athena-elasticsearch/pom.xml
@@ -127,7 +127,7 @@
org.elasticsearch.client
elasticsearch-rest-client
- 8.15.1
+ 8.15.2
diff --git a/athena-gcs/pom.xml b/athena-gcs/pom.xml
index 8e55459a2c..a9875d4b61 100644
--- a/athena-gcs/pom.xml
+++ b/athena-gcs/pom.xml
@@ -75,7 +75,7 @@
com.google.cloud
google-cloud-storage
- 2.42.0
+ 2.43.1
diff --git a/athena-google-bigquery/pom.xml b/athena-google-bigquery/pom.xml
index 1f313ce813..7ab30b3133 100644
--- a/athena-google-bigquery/pom.xml
+++ b/athena-google-bigquery/pom.xml
@@ -80,7 +80,7 @@
nl.jqno.equalsverifier
equalsverifier
- 3.16.2
+ 3.17
test
diff --git a/athena-jdbc/src/main/java/com/amazonaws/athena/connectors/jdbc/manager/JdbcRecordHandler.java b/athena-jdbc/src/main/java/com/amazonaws/athena/connectors/jdbc/manager/JdbcRecordHandler.java
index 3c431efb5c..d1224b68f1 100644
--- a/athena-jdbc/src/main/java/com/amazonaws/athena/connectors/jdbc/manager/JdbcRecordHandler.java
+++ b/athena-jdbc/src/main/java/com/amazonaws/athena/connectors/jdbc/manager/JdbcRecordHandler.java
@@ -82,11 +82,11 @@
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
-import java.util.concurrent.TimeUnit;
/**
* Abstracts JDBC record handler and provides common reusable split records handling.
@@ -273,8 +273,9 @@ protected Extractor makeExtractor(Field field, ResultSet resultSet, Map
{
+ //Issue fix for getting different date (offset by 1) for any dates prior to 1/1/1970.
if (resultSet.getDate(fieldName) != null) {
- dst.value = (int) TimeUnit.MILLISECONDS.toDays(resultSet.getDate(fieldName).getTime());
+ dst.value = (int) LocalDate.parse(resultSet.getDate(fieldName).toString()).toEpochDay();
}
dst.isSet = resultSet.wasNull() ? 0 : 1;
};
diff --git a/athena-kafka/pom.xml b/athena-kafka/pom.xml
index 18a54e7d60..d9b4c7a2d1 100644
--- a/athena-kafka/pom.xml
+++ b/athena-kafka/pom.xml
@@ -24,7 +24,7 @@
org.apache.kafka
kafka-clients
- 3.8.0
+ 7.7.1-ce
org.apache.avro
diff --git a/athena-msk/pom.xml b/athena-msk/pom.xml
index 20fe9c4fdc..3e602a3b60 100644
--- a/athena-msk/pom.xml
+++ b/athena-msk/pom.xml
@@ -81,7 +81,7 @@
org.apache.kafka
kafka-clients
- 3.8.0
+ 7.7.1-ce
org.apache.avro
@@ -91,7 +91,7 @@
com.google.protobuf
protobuf-java
- 3.25.3
+ 3.25.5
software.amazon.glue
diff --git a/athena-oracle/src/test/java/com/amazonaws/athena/connectors/oracle/OracleRecordHandlerTest.java b/athena-oracle/src/test/java/com/amazonaws/athena/connectors/oracle/OracleRecordHandlerTest.java
index d0b3ade385..7dfceed728 100644
--- a/athena-oracle/src/test/java/com/amazonaws/athena/connectors/oracle/OracleRecordHandlerTest.java
+++ b/athena-oracle/src/test/java/com/amazonaws/athena/connectors/oracle/OracleRecordHandlerTest.java
@@ -45,8 +45,10 @@
import org.mockito.Mockito;
import java.sql.Connection;
+import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.SQLException;
+import java.time.LocalDate;
import java.util.Collections;
import static com.amazonaws.athena.connectors.oracle.OracleConstants.ORACLE_NAME;
@@ -97,6 +99,8 @@ public void buildSplitSql()
schemaBuilder.addField(FieldBuilder.newBuilder("testCol6", Types.MinorType.TINYINT.getType()).build());
schemaBuilder.addField(FieldBuilder.newBuilder("testCol7", Types.MinorType.FLOAT8.getType()).build());
schemaBuilder.addField(FieldBuilder.newBuilder("testCol8", Types.MinorType.BIT.getType()).build());
+ schemaBuilder.addField(FieldBuilder.newBuilder("testCol9", Types.MinorType.DATEDAY.getType()).build());
+ schemaBuilder.addField(FieldBuilder.newBuilder("testCol10", Types.MinorType.DATEDAY.getType()).build());
schemaBuilder.addField(FieldBuilder.newBuilder("partition_name", Types.MinorType.VARCHAR.getType()).build());
Schema schema = schemaBuilder.build();
@@ -120,6 +124,10 @@ public void buildSplitSql()
ValueSet valueSet6 = getSingleValueSet(0);
ValueSet valueSet7 = getSingleValueSet(1.2d);
ValueSet valueSet8 = getSingleValueSet(true);
+ final long epochDaysPrior1970 = LocalDate.parse("1967-07-27").toEpochDay();
+ ValueSet valueSet9 = getSingleValueSet(epochDaysPrior1970);
+ final long epochDaysPost1970 = LocalDate.parse("1971-01-01").toEpochDay();
+ ValueSet valueSet10 = getSingleValueSet(epochDaysPost1970);
Constraints constraints = Mockito.mock(Constraints.class);
Mockito.when(constraints.getSummary()).thenReturn(new ImmutableMap.Builder()
@@ -131,11 +139,13 @@ public void buildSplitSql()
.put("testCol6", valueSet6)
.put("testCol7", valueSet7)
.put("testCol8", valueSet8)
+ .put("testCol9", valueSet9)
+ .put("testCol10", valueSet10)
.build());
Mockito.when(constraints.getLimit()).thenReturn(5L);
- String expectedSql = "SELECT \"testCol1\", \"testCol2\", \"testCol3\", \"testCol4\", \"testCol5\", \"testCol6\", \"testCol7\", \"testCol8\" FROM \"testSchema\".\"testTable\" PARTITION (p0) WHERE (\"testCol1\" IN (?,?)) AND ((\"testCol2\" >= ? AND \"testCol2\" < ?)) AND ((\"testCol3\" > ? AND \"testCol3\" <= ?)) AND (\"testCol4\" = ?) AND (\"testCol5\" = ?) AND (\"testCol6\" = ?) AND (\"testCol7\" = ?) AND (\"testCol8\" = ?)";
+ String expectedSql = "SELECT \"testCol1\", \"testCol2\", \"testCol3\", \"testCol4\", \"testCol5\", \"testCol6\", \"testCol7\", \"testCol8\", \"testCol9\", \"testCol10\" FROM \"testSchema\".\"testTable\" PARTITION (p0) WHERE (\"testCol1\" IN (?,?)) AND ((\"testCol2\" >= ? AND \"testCol2\" < ?)) AND ((\"testCol3\" > ? AND \"testCol3\" <= ?)) AND (\"testCol4\" = ?) AND (\"testCol5\" = ?) AND (\"testCol6\" = ?) AND (\"testCol7\" = ?) AND (\"testCol8\" = ?) AND (\"testCol9\" = ?) AND (\"testCol10\" = ?)";
PreparedStatement expectedPreparedStatement = Mockito.mock(PreparedStatement.class);
Mockito.when(this.connection.prepareStatement(Mockito.eq(expectedSql))).thenReturn(expectedPreparedStatement);
PreparedStatement preparedStatement = this.oracleRecordHandler.buildSplitSql(this.connection, "testCatalogName", tableName, schema, constraints, split);
@@ -152,6 +162,11 @@ public void buildSplitSql()
Mockito.verify(preparedStatement, Mockito.times(1)).setByte(9, (byte) 0);
Mockito.verify(preparedStatement, Mockito.times(1)).setDouble(10, 1.2d);
Mockito.verify(preparedStatement, Mockito.times(1)).setBoolean(11, true);
+ //year – the year minus 1900; must be 0 to 8099. (Note that 8099 is 9999 minus 1900.) month – 0 to 11 day – 1 to 31
+ Date expectedDatePrior1970 = new Date(67, 6, 27);//Date: 1967-07-27
+ Mockito.verify(preparedStatement, Mockito.times(1)).setDate(12, expectedDatePrior1970);
+ Date expectedDatePost1970 = new Date(71, 0, 1);//Date: 1971-01-01
+ Mockito.verify(preparedStatement, Mockito.times(1)).setDate(13, expectedDatePost1970);
}
private ValueSet getSingleValueSet(Object value) {
diff --git a/athena-saphana/pom.xml b/athena-saphana/pom.xml
index 85ca8aa644..a6d80a882a 100644
--- a/athena-saphana/pom.xml
+++ b/athena-saphana/pom.xml
@@ -62,7 +62,7 @@
com.sap.cloud.db.jdbc
ngdbc
- 2.21.11
+ 2.22.11
diff --git a/athena-synapse/pom.xml b/athena-synapse/pom.xml
index 21fb490ca8..6f1440edd9 100644
--- a/athena-synapse/pom.xml
+++ b/athena-synapse/pom.xml
@@ -35,7 +35,7 @@
com.microsoft.azure
msal4j
- 1.17.1
+ 1.17.2
com.fasterxml.jackson.datatype
diff --git a/pom.xml b/pom.xml
index eca4e01b5f..659826a55f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,11 +27,11 @@
3.26.3
7.10.2
- 2.17.2
+ 2.18.0
3.5.0
- 2.24.0
+ 2.24.1
13.0.0
- 33.3.0-jre
+ 33.3.1-jre
3.25.3
4.3.4
2.15
@@ -53,7 +53,7 @@
org.junit
junit-bom
- 5.11.0
+ 5.11.1
pom
import
@@ -432,7 +432,7 @@
org.apache.maven.plugins
maven-gpg-plugin
- 3.2.6
+ 3.2.7
sign-artifacts