From 3e44ff4ab994aa9c7dc223e210f84dce2aadfd77 Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Fri, 1 Mar 2024 10:10:05 +0000 Subject: [PATCH 1/7] New snapshot release v2.1.12 --- bom/pom.xml | 2 +- coordination/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 2 +- scheme/pom.xml | 2 +- table/pom.xml | 2 +- tests/common/pom.xml | 2 +- tests/junit4-support/pom.xml | 2 +- tests/junit5-support/pom.xml | 2 +- topic/pom.xml | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/bom/pom.xml b/bom/pom.xml index 5ff1f627a..024376d97 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -6,7 +6,7 @@ 4.0.0 tech.ydb - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-bom Java SDK Bill of Materials Java SDK Bill of Materials (BOM) diff --git a/coordination/pom.xml b/coordination/pom.xml index 54ceb02af..48fadfab4 100644 --- a/coordination/pom.xml +++ b/coordination/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-coordination diff --git a/core/pom.xml b/core/pom.xml index 8899add12..3b2a2f7f5 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-core diff --git a/pom.xml b/pom.xml index 723b06cf9..5e916d769 100644 --- a/pom.xml +++ b/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT Java SDK for YDB Java SDK for YDB diff --git a/scheme/pom.xml b/scheme/pom.xml index e7f29c888..9f66387db 100644 --- a/scheme/pom.xml +++ b/scheme/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-scheme diff --git a/table/pom.xml b/table/pom.xml index 9bcb0962c..fbfa4b382 100644 --- a/table/pom.xml +++ b/table/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-table diff --git a/tests/common/pom.xml b/tests/common/pom.xml index eaf3306b2..a6ef13163 100644 --- a/tests/common/pom.xml +++ b/tests/common/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ../../pom.xml diff --git a/tests/junit4-support/pom.xml b/tests/junit4-support/pom.xml index 93176bba3..018310f55 100644 --- a/tests/junit4-support/pom.xml +++ b/tests/junit4-support/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ../../pom.xml diff --git a/tests/junit5-support/pom.xml b/tests/junit5-support/pom.xml index cef52f8e2..01aa819b5 100644 --- a/tests/junit5-support/pom.xml +++ b/tests/junit5-support/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ../../pom.xml diff --git a/topic/pom.xml b/topic/pom.xml index f7bfa3cf4..b53f73d4e 100644 --- a/topic/pom.xml +++ b/topic/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.11 + 2.1.12-SNAPSHOT ydb-sdk-topic From 0ec9c36682f8ab61ee8eae6425963d615a9fed4a Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Mon, 12 Feb 2024 14:31:57 +0000 Subject: [PATCH 2/7] Update visiblity of constructor of YdbDockerContainer --- .../ydb/test/integration/docker/DockerHelperFactory.java | 5 ++--- .../ydb/test/integration/docker/YdbDockerContainer.java | 9 +++++---- .../{docker => }/DockerHelperFactoryTest.java | 9 +++------ 3 files changed, 10 insertions(+), 13 deletions(-) rename tests/common/src/test/java/tech/ydb/test/integration/{docker => }/DockerHelperFactoryTest.java (97%) diff --git a/tests/common/src/main/java/tech/ydb/test/integration/docker/DockerHelperFactory.java b/tests/common/src/main/java/tech/ydb/test/integration/docker/DockerHelperFactory.java index 14987fcf1..cde5dccc0 100644 --- a/tests/common/src/main/java/tech/ydb/test/integration/docker/DockerHelperFactory.java +++ b/tests/common/src/main/java/tech/ydb/test/integration/docker/DockerHelperFactory.java @@ -1,6 +1,5 @@ package tech.ydb.test.integration.docker; -import com.google.common.annotations.VisibleForTesting; import org.testcontainers.utility.TestcontainersConfiguration; import tech.ydb.core.grpc.GrpcTransport; @@ -22,10 +21,10 @@ public DockerHelperFactory(YdbEnvironment env) { this(env, new YdbDockerContainer(env, new PortsGenerator())); } - @VisibleForTesting - DockerHelperFactory(YdbEnvironment env, YdbDockerContainer container) { + public DockerHelperFactory(YdbEnvironment env, YdbDockerContainer container) { this.env = env; this.container = container; + this.container.init(); } @Override diff --git a/tests/common/src/main/java/tech/ydb/test/integration/docker/YdbDockerContainer.java b/tests/common/src/main/java/tech/ydb/test/integration/docker/YdbDockerContainer.java index 0e64ca8cf..b0a758c13 100644 --- a/tests/common/src/main/java/tech/ydb/test/integration/docker/YdbDockerContainer.java +++ b/tests/common/src/main/java/tech/ydb/test/integration/docker/YdbDockerContainer.java @@ -22,14 +22,15 @@ public class YdbDockerContainer extends GenericContainer { private final int grpcsPort; // Secure connection private final int grpcPort; // Non secure connection - YdbDockerContainer(YdbEnvironment env, PortsGenerator portsGenerator) { + public YdbDockerContainer(YdbEnvironment env, PortsGenerator portsGenerator) { super(env.dockerImage()); this.env = env; + this.grpcsPort = portsGenerator.findAvailablePort(); + this.grpcPort = portsGenerator.findAvailablePort(); + } - grpcsPort = portsGenerator.findAvailablePort(); - grpcPort = portsGenerator.findAvailablePort(); - + public void init() { addExposedPort(grpcPort); addExposedPort(grpcsPort); diff --git a/tests/common/src/test/java/tech/ydb/test/integration/docker/DockerHelperFactoryTest.java b/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java similarity index 97% rename from tests/common/src/test/java/tech/ydb/test/integration/docker/DockerHelperFactoryTest.java rename to tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java index 36a919976..e82a5fdf8 100644 --- a/tests/common/src/test/java/tech/ydb/test/integration/docker/DockerHelperFactoryTest.java +++ b/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java @@ -1,4 +1,4 @@ -package tech.ydb.test.integration.docker; +package tech.ydb.test.integration; import java.io.ByteArrayInputStream; import java.io.InputStream; @@ -12,11 +12,8 @@ import org.testcontainers.utility.ThrowingFunction; import tech.ydb.core.grpc.GrpcTransport; -import tech.ydb.test.integration.DockerMock; -import tech.ydb.test.integration.GrpcTransportMock; -import tech.ydb.test.integration.YdbEnvironment; -import tech.ydb.test.integration.YdbEnvironmentMock; -import tech.ydb.test.integration.YdbHelper; +import tech.ydb.test.integration.docker.DockerHelperFactory; +import tech.ydb.test.integration.docker.YdbDockerContainer; import tech.ydb.test.integration.utils.PortsGenerator; /** From 65c9e26449ffed9f31e2e22b54804b8b9189dbf4 Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Mon, 12 Feb 2024 15:24:24 +0000 Subject: [PATCH 3/7] Updated version of testcontainers --- pom.xml | 2 +- .../tech/ydb/test/integration/DockerHelperFactoryTest.java | 6 +++--- tests/junit4-support/pom.xml | 1 + tests/junit5-support/pom.xml | 1 + 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 5e916d769..c8d87eb7c 100644 --- a/pom.xml +++ b/pom.xml @@ -37,7 +37,7 @@ 2.17.2 2.8.9 4.11.0 - 1.17.6 + 1.19.3 diff --git a/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java b/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java index e82a5fdf8..b308d9354 100644 --- a/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java +++ b/tests/common/src/test/java/tech/ydb/test/integration/DockerHelperFactoryTest.java @@ -2,13 +2,13 @@ import java.io.ByteArrayInputStream; import java.io.InputStream; -import java.util.function.Consumer; import com.github.dockerjava.api.command.CreateContainerCmd; import org.junit.After; import org.junit.Assert; import org.junit.Test; import org.mockito.Mockito; +import org.testcontainers.core.CreateContainerCmdModifier; import org.testcontainers.utility.ThrowingFunction; import tech.ydb.core.grpc.GrpcTransport; @@ -79,8 +79,8 @@ private void assertCreateContainerCmdModifiers(YdbMockContainer container) { Mockito.when(cmd.withName(Mockito.any())).thenReturn(cmd); Mockito.when(cmd.withHostName(Mockito.any())).thenReturn(cmd); - for (Consumer modifier: container.getCreateContainerCmdModifiers()) { - modifier.accept(cmd); + for (CreateContainerCmdModifier modifier: container.getCreateContainerCmdModifiers()) { + modifier.modify(cmd); } Mockito.verify(cmd, Mockito.times(1)).withName("ydb-" + DockerMock.UUID_MOCKED); // from random UUID diff --git a/tests/junit4-support/pom.xml b/tests/junit4-support/pom.xml index 018310f55..64ad8c6c9 100644 --- a/tests/junit4-support/pom.xml +++ b/tests/junit4-support/pom.xml @@ -27,6 +27,7 @@ junit junit + provided \ No newline at end of file diff --git a/tests/junit5-support/pom.xml b/tests/junit5-support/pom.xml index 01aa819b5..867b90ca1 100644 --- a/tests/junit5-support/pom.xml +++ b/tests/junit5-support/pom.xml @@ -27,6 +27,7 @@ org.junit.jupiter junit-jupiter-api + provided \ No newline at end of file From a4f8b0e2209c3fe820cf1e75981d31ea481d7af7 Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Mon, 5 Feb 2024 15:37:53 +0000 Subject: [PATCH 4/7] Added async helpers to build future-chains --- core/src/main/java/tech/ydb/core/Result.java | 131 ++++++++++++++++++ core/src/main/java/tech/ydb/core/Status.java | 79 +++++++++++ .../main/java/tech/ydb/core/utils/Async.java | 1 + 3 files changed, 211 insertions(+) diff --git a/core/src/main/java/tech/ydb/core/Result.java b/core/src/main/java/tech/ydb/core/Result.java index b1321071c..1deea5f54 100644 --- a/core/src/main/java/tech/ydb/core/Result.java +++ b/core/src/main/java/tech/ydb/core/Result.java @@ -1,6 +1,7 @@ package tech.ydb.core; import java.util.Objects; +import java.util.concurrent.CompletableFuture; import java.util.function.Function; import javax.annotation.Nonnull; @@ -21,6 +22,12 @@ public interface Result { @Nonnull Result map(Function mapper); + @Nonnull + CompletableFuture> mapResultFuture(Function>> mapper); + + @Nonnull + CompletableFuture mapStatusFuture(Function> mapper); + default boolean isSuccess() { return getStatus().getCode() == StatusCode.SUCCESS; } @@ -48,6 +55,85 @@ static Result error(String message, Throwable throwable) { return new Error<>(message, throwable); } + /** + * Create functor to compose the successful result to next completable future with another result. Failed results + * will be passed as is. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Execute one query, with opening new transaction
+     * session.executeDataQuery(...)
+     *    // Execute second query if first was successful
+     *    .thenCompose(Result.compose(fisrt -> session.executeDataQuery(...)))
+     *    // Commit transaction after two successful query executions
+     *    .thenCompose(Result.composeStatus(second -> session.commitTransaction(...)));
+     * }
+ * @param type of value in Result + * @param type of resulting value in returning future + * @param mapper mapper from successful value to completable future with another result + * @return functor which composes successful results to completable future with another result + */ + static Function, CompletableFuture>> compose( + Function>> mapper) { + return result -> result.mapResultFuture(mapper); + } + + /** + * Create functor to compose the successful result to next completable future with status. Failed results + * will be composed to its statuses. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Execute one query, with opening new transaction
+     * session.executeDataQuery(...)
+     *    // Execute second query if first was successful
+     *    .thenCompose(Result.compose(fisrt -> session.executeDataQuery(...)))
+     *    // Commit transaction after two successful query executions
+     *    .thenCompose(Result.composeStatus(second -> session.commitTransaction(...)));
+     * }
+ * @param type of value in Result + * @param mapper mapper from successful value to completable future with status + * @return functor which composes successful results to completable future with status + */ + static Function, CompletableFuture> composeStatus( + Function> mapper) { + return result -> result.mapStatusFuture(mapper); + } + + /** + * Create functor to compose the successful result to completed future with specified value. Failed results + * will be passed as is. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Execute one query
+     * session.executeDataQuery(...)
+     *    // Execute second query if first was successful
+     *    .thenCompose(Result.compose(fisrt -> session
+     *        .executeDataQuery(...)
+     *        // But use first request result as the result of
+     *        .thenCompose(Result.composeValue(first))
+     *    )
+     * )
+     * }
+ * @param type of value in Result + * @param type of composed value + * @param value value to create completed future + * @return functor which composes successful results to completed future with specified value + */ + static Function, CompletableFuture>> composeValue(U value) { + return result -> result.mapResultFuture(v -> CompletableFuture.completedFuture(Result.success(value))); + } + /* * SUCCESS */ @@ -76,6 +162,16 @@ public Success map(Function mapper) { return new Success<>(mapper.apply(value), status); } + @Override + public CompletableFuture> mapResultFuture(Function>> mapper) { + return mapper.apply(value); + } + + @Override + public CompletableFuture mapStatusFuture(Function> mapper) { + return mapper.apply(value); + } + @Override public boolean equals(Object o) { if (this == o) { @@ -118,6 +214,17 @@ public Fail map(Function mapper) { return (Fail) this; } + @Override + @SuppressWarnings("unchecked") + public CompletableFuture> mapResultFuture(Function>> mapper) { + return CompletableFuture.completedFuture((Fail) this); + } + + @Override + public CompletableFuture mapStatusFuture(Function> mapper) { + return CompletableFuture.completedFuture(status); + } + @Override public Status getStatus() { return status; @@ -179,6 +286,17 @@ public Unexpected map(Function mapper) { return (Unexpected) this; } + @Override + @SuppressWarnings("unchecked") + public CompletableFuture> mapResultFuture(Function>> mapper) { + return CompletableFuture.completedFuture((Unexpected) this); + } + + @Override + public CompletableFuture mapStatusFuture(Function> mapper) { + return CompletableFuture.completedFuture(cause.getStatus()); + } + @Override public boolean equals(Object o) { if (this == o) { @@ -238,6 +356,19 @@ public Error map(Function mapper) { return (Error) this; } + @Override + @SuppressWarnings("unchecked") + public CompletableFuture> mapResultFuture(Function>> mapper) { + CompletableFuture> future = new CompletableFuture<>(); + future.completeExceptionally(cause); + return future; + } + + @Override + public CompletableFuture mapStatusFuture(Function> mapper) { + return CompletableFuture.completedFuture(status); + } + @Override public boolean equals(Object o) { if (this == o) { diff --git a/core/src/main/java/tech/ydb/core/Status.java b/core/src/main/java/tech/ydb/core/Status.java index 7eef2a93a..7d620283c 100644 --- a/core/src/main/java/tech/ydb/core/Status.java +++ b/core/src/main/java/tech/ydb/core/Status.java @@ -3,6 +3,9 @@ import java.io.Serializable; import java.util.Arrays; import java.util.Objects; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; +import java.util.function.Supplier; /** @@ -24,6 +27,82 @@ private Status(StatusCode code, Double consumedRu, Issue[] issues) { this.issues = issues; } + /** + * Create functor to compose the successful status to next completable future with another status. Failed statuses + * will be passed as is. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Create one table
+     * session.createTable(...)
+     *    // Create second table if first was created successful
+     *    .thenCompose(Status.compose(() -> session.createTable(...)));
+     * }
+ * @param supplier generator for completable future with another status + * @return functor which composes successful status to completable future with another status + */ + public static Function> compose( + Supplier> supplier) { + return status -> status.isSuccess() ? supplier.get() : CompletableFuture.completedFuture(status); + } + + /** + * Create functor to compose the successful status to next completable future with result. Failed statuses + * will be composed to failed results. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Create one table
+     * session.createTable(...)
+     *    // Execute query if table was created successful
+     *    .thenCompose(Status.composeResult(() -> session.executeDataQuery(...)));
+     * }
+ * @param type of value in Result + * @param supplier generator for completable future with result + * @return functor which composes successful status to completable future with result + */ + public static Function>> composeResult( + Supplier>> supplier) { + return status -> status.isSuccess() ? supplier.get() : CompletableFuture.completedFuture(Result.fail(status)); + } + + /** + * Create functor to compose the successful status to completed future with specified value. Failed statuses + * will be composed to failed results. + *

+ * This helper is designed to be used as {@link CompletableFuture#thenCompose(java.util.function.Function) } + * argument + *

+ * Example of usage: + *

 {@code
+     * // Start new transaction
+     * session.beginTransaction(...)
+     *    // Execute query in opened transaction
+     *    .thenCompose(Result.compose(transaction -> session.executeDataQuery(...)
+     *        // Commmit transaction
+     *        .thenCompose(Result.compose(result -> transaction.commit()
+     *            // And return result of query if commit was successful
+     *            .thenCompose(Status.bindValue(result.getResultSet(0)))
+     *        ))
+     *    ));
+     * }
+ * @param type of value in Result + * @param value value to create completed future + * @return functor which composes successful status to completed future with specified value + */ + public static Function>> bindValue(T value) { + return status -> { + Result res = status.isSuccess() ? Result.success(value) : Result.fail(status); + return CompletableFuture.completedFuture(res); + }; + } + public static Status of(StatusCode code, Double consumedRu, Issue... issues) { boolean hasIssues = issues != null && issues.length > 0; if (code == StatusCode.SUCCESS && consumedRu == null && !hasIssues) { diff --git a/core/src/main/java/tech/ydb/core/utils/Async.java b/core/src/main/java/tech/ydb/core/utils/Async.java index cae982b21..682009018 100644 --- a/core/src/main/java/tech/ydb/core/utils/Async.java +++ b/core/src/main/java/tech/ydb/core/utils/Async.java @@ -14,6 +14,7 @@ import io.grpc.netty.shaded.io.netty.util.internal.SystemPropertyUtil; + /** * @author Sergey Polovko */ From 1cec9748fa32686a1fe1f84da8c894a93808a11e Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Mon, 5 Feb 2024 15:38:22 +0000 Subject: [PATCH 5/7] Deprecated unuseful methods --- core/src/main/java/tech/ydb/core/utils/Async.java | 3 +++ .../src/main/java/tech/ydb/table/SessionRetryContext.java | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/tech/ydb/core/utils/Async.java b/core/src/main/java/tech/ydb/core/utils/Async.java index 682009018..74785983a 100644 --- a/core/src/main/java/tech/ydb/core/utils/Async.java +++ b/core/src/main/java/tech/ydb/core/utils/Async.java @@ -39,6 +39,7 @@ public static CompletableFuture failedFuture(Throwable t) { return f; } + @Deprecated public static CompletableFuture safeCall(Supplier> fn) { try { return fn.get(); @@ -47,6 +48,7 @@ public static CompletableFuture safeCall(Supplier> f } } + @Deprecated public static CompletableFuture safeCall(T t, Function> fn) { try { return fn.apply(t); @@ -55,6 +57,7 @@ public static CompletableFuture safeCall(T t, Function CompletableFuture safeCall(T t, U u, BiFunction> fn) { try { return fn.apply(t, u); diff --git a/table/src/main/java/tech/ydb/table/SessionRetryContext.java b/table/src/main/java/tech/ydb/table/SessionRetryContext.java index b47ce6f06..d5b202b41 100644 --- a/table/src/main/java/tech/ydb/table/SessionRetryContext.java +++ b/table/src/main/java/tech/ydb/table/SessionRetryContext.java @@ -202,8 +202,8 @@ private void acceptSession(@Nonnull Result sessionResult) { } final Session session = sessionResult.getValue(); - Async.safeCall(session, fn) - .whenComplete((fnResult, fnException) -> { + try { + fn.apply(session).whenComplete((fnResult, fnException) -> { try { session.close(); @@ -226,6 +226,10 @@ private void acceptSession(@Nonnull Result sessionResult) { promise.completeExceptionally(unexpected); } }); + } catch (RuntimeException ex) { + session.close(); + handleException(ex); + } } private void scheduleNext(long delayMillis) { From 60fd7861482059a22318628d1db7ac2f1db6bc17 Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Fri, 1 Mar 2024 10:14:18 +0000 Subject: [PATCH 6/7] Updated changelog --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9cf8d0c24..e2f029e70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +## 2.1.12 ## + +* Test common: Changed visibility of YdbDockerContainer +* Core: Added async helpers to build the future chains + ## 2.1.11 ## * Transports: Add option withGrpcKeepAliveTime to enable grpc keep-alives From ef14404cd995e1c1eea4901a45966256a2024d5b Mon Sep 17 00:00:00 2001 From: Alexandr Gorshenin Date: Fri, 1 Mar 2024 10:15:50 +0000 Subject: [PATCH 7/7] New release version 2.1.12 --- README.md | 2 +- bom/pom.xml | 2 +- coordination/pom.xml | 2 +- core/pom.xml | 2 +- core/src/main/resources/version.properties | 2 +- pom.xml | 2 +- scheme/pom.xml | 2 +- table/pom.xml | 2 +- tests/common/pom.xml | 2 +- tests/junit4-support/pom.xml | 2 +- tests/junit5-support/pom.xml | 2 +- topic/pom.xml | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index ea76baac8..311c449ad 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Firstly you can import YDB Java BOM to specify correct versions of SDK modules. tech.ydb ydb-sdk-bom - 2.1.11 + 2.1.12 pom import diff --git a/bom/pom.xml b/bom/pom.xml index 024376d97..50278bb0f 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -6,7 +6,7 @@ 4.0.0 tech.ydb - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-bom Java SDK Bill of Materials Java SDK Bill of Materials (BOM) diff --git a/coordination/pom.xml b/coordination/pom.xml index 48fadfab4..95ea7749d 100644 --- a/coordination/pom.xml +++ b/coordination/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-coordination diff --git a/core/pom.xml b/core/pom.xml index 3b2a2f7f5..0e63c736c 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-core diff --git a/core/src/main/resources/version.properties b/core/src/main/resources/version.properties index 1a30fbf9f..1ba7b7be9 100644 --- a/core/src/main/resources/version.properties +++ b/core/src/main/resources/version.properties @@ -1 +1 @@ -version=2.1.11 +version=2.1.12 diff --git a/pom.xml b/pom.xml index c8d87eb7c..92fb550e6 100644 --- a/pom.xml +++ b/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 Java SDK for YDB Java SDK for YDB diff --git a/scheme/pom.xml b/scheme/pom.xml index 9f66387db..61c528ac7 100644 --- a/scheme/pom.xml +++ b/scheme/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-scheme diff --git a/table/pom.xml b/table/pom.xml index fbfa4b382..b4a187692 100644 --- a/table/pom.xml +++ b/table/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-table diff --git a/tests/common/pom.xml b/tests/common/pom.xml index a6ef13163..8cb5ac2a4 100644 --- a/tests/common/pom.xml +++ b/tests/common/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ../../pom.xml diff --git a/tests/junit4-support/pom.xml b/tests/junit4-support/pom.xml index 64ad8c6c9..e44003959 100644 --- a/tests/junit4-support/pom.xml +++ b/tests/junit4-support/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ../../pom.xml diff --git a/tests/junit5-support/pom.xml b/tests/junit5-support/pom.xml index 867b90ca1..143bff453 100644 --- a/tests/junit5-support/pom.xml +++ b/tests/junit5-support/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ../../pom.xml diff --git a/topic/pom.xml b/topic/pom.xml index b53f73d4e..fd3eba8eb 100644 --- a/topic/pom.xml +++ b/topic/pom.xml @@ -8,7 +8,7 @@ tech.ydb ydb-sdk-parent - 2.1.12-SNAPSHOT + 2.1.12 ydb-sdk-topic