diff --git a/CHANGELOG.md b/CHANGELOG.md
index f85eaecf78..5df82fc59d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -23,6 +23,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Add document lifecycle guide and runnable sample ([#2017](https://github.com/opensearch-project/opensearch-java/pull/2017))
### Fixed
+- Fix ISM timestamp fields typed as `Integer` instead of `Long` causing numeric overflow for epoch-millisecond values ([#2039](https://github.com/opensearch-project/opensearch-java/pull/2039))
## [Unreleased 3.x]
### Added
diff --git a/java-client/src/generated/java/org/opensearch/client/opensearch/ism/IsmTemplate.java b/java-client/src/generated/java/org/opensearch/client/opensearch/ism/IsmTemplate.java
index 8140035e18..a127dbaae9 100644
--- a/java-client/src/generated/java/org/opensearch/client/opensearch/ism/IsmTemplate.java
+++ b/java-client/src/generated/java/org/opensearch/client/opensearch/ism/IsmTemplate.java
@@ -65,7 +65,7 @@ public class IsmTemplate implements PlainJsonSerializable, ToCopyableBuilder indexPatterns;
@Nullable
- private final Integer lastUpdatedTime;
+ private final Long lastUpdatedTime;
@Nullable
private final Number priority;
@@ -100,7 +100,7 @@ public final List indexPatterns() {
*
*/
@Nullable
- public final Integer lastUpdatedTime() {
+ public final Long lastUpdatedTime() {
return this.lastUpdatedTime;
}
@@ -166,7 +166,7 @@ public static class Builder extends ObjectBuilderBase implements CopyableBuilder
@Nullable
private List indexPatterns;
@Nullable
- private Integer lastUpdatedTime;
+ private Long lastUpdatedTime;
@Nullable
private Number priority;
@@ -229,7 +229,7 @@ public final Builder indexPatterns(String value, String... values) {
*
*/
@Nonnull
- public final Builder lastUpdatedTime(@Nullable Integer value) {
+ public final Builder lastUpdatedTime(@Nullable Long value) {
this.lastUpdatedTime = value;
return this;
}
@@ -272,7 +272,7 @@ public IsmTemplate build() {
protected static void setupIsmTemplateDeserializer(ObjectDeserializer op) {
op.add(Builder::indexPatterns, JsonpDeserializer.arrayDeserializer(JsonpDeserializer.stringDeserializer()), "index_patterns");
- op.add(Builder::lastUpdatedTime, JsonpDeserializer.integerDeserializer(), "last_updated_time");
+ op.add(Builder::lastUpdatedTime, JsonpDeserializer.longDeserializer(), "last_updated_time");
op.add(Builder::priority, JsonpDeserializer.numberDeserializer(), "priority");
}
diff --git a/java-client/src/generated/java/org/opensearch/client/opensearch/ism/Policy.java b/java-client/src/generated/java/org/opensearch/client/opensearch/ism/Policy.java
index 4fa6fc9f5d..6e7bceb3bc 100644
--- a/java-client/src/generated/java/org/opensearch/client/opensearch/ism/Policy.java
+++ b/java-client/src/generated/java/org/opensearch/client/opensearch/ism/Policy.java
@@ -77,7 +77,7 @@ public class Policy implements PlainJsonSerializable, ToCopyableBuilder ismTemplate;
@Nullable
- private final Integer lastUpdatedTime;
+ private final Long lastUpdatedTime;
@Nullable
private final String policyId;
@@ -156,7 +156,7 @@ public final List ismTemplate() {
*
*/
@Nullable
- public final Integer lastUpdatedTime() {
+ public final Long lastUpdatedTime() {
return this.lastUpdatedTime;
}
@@ -279,7 +279,7 @@ public static class Builder extends ObjectBuilderBase implements CopyableBuilder
@Nullable
private List ismTemplate;
@Nullable
- private Integer lastUpdatedTime;
+ private Long lastUpdatedTime;
@Nullable
private String policyId;
@Nullable
@@ -418,7 +418,7 @@ public final Builder ismTemplate(Function
*/
@Nonnull
- public final Builder lastUpdatedTime(@Nullable Integer value) {
+ public final Builder lastUpdatedTime(@Nullable Long value) {
this.lastUpdatedTime = value;
return this;
}
@@ -523,7 +523,7 @@ protected static void setupPolicyDeserializer(ObjectDeserializer
op.add(Builder::description, JsonpDeserializer.stringDeserializer(), "description");
op.add(Builder::errorNotification, ErrorNotification._DESERIALIZER, "error_notification");
op.add(Builder::ismTemplate, JsonpDeserializer.arrayDeserializer(IsmTemplate._DESERIALIZER), "ism_template");
- op.add(Builder::lastUpdatedTime, JsonpDeserializer.integerDeserializer(), "last_updated_time");
+ op.add(Builder::lastUpdatedTime, JsonpDeserializer.longDeserializer(), "last_updated_time");
op.add(Builder::policyId, JsonpDeserializer.stringDeserializer(), "policy_id");
op.add(Builder::schemaVersion, JsonpDeserializer.numberDeserializer(), "schema_version");
op.add(Builder::states, JsonpDeserializer.arrayDeserializer(States._DESERIALIZER), "states");
diff --git a/java-codegen/opensearch-openapi.yaml b/java-codegen/opensearch-openapi.yaml
index b4829f72a0..c5afb13c19 100644
--- a/java-codegen/opensearch-openapi.yaml
+++ b/java-codegen/opensearch-openapi.yaml
@@ -56686,9 +56686,11 @@ components:
$ref: '#/components/schemas/flow_framework.common___user'
created_time:
type: integer
+ format: int64
description: When the workflow was created.
last_updated_time:
type: integer
+ format: int64
description: When the workflow was last updated.
last_provisioned_time:
type: number
@@ -61772,6 +61774,7 @@ components:
description: The priority of the ISM template.
last_updated_time:
type: integer
+ format: int64
description: When the ISM template was last updated.
ism._common___Metadata:
type: object
@@ -61797,6 +61800,7 @@ components:
description: The description of the policy.
last_updated_time:
type: integer
+ format: int64
description: When the policy was last updated.
schema_version:
type: number
@@ -70265,6 +70269,7 @@ components:
type: boolean
last_updated_time:
type: integer
+ format: int64
description: When the policy was last modified.
enabled_time:
type: integer