Skip to content

Commit 49cde3a

Browse files
authored
Upgrade JDBC & SDK verisons (ydb-platform#179)
2 parents bc4e7c7 + f8e1156 commit 49cde3a

File tree

6 files changed

+26
-19
lines changed

6 files changed

+26
-19
lines changed

jooq-dialect/CHANGELOG.md

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1+
## 1.1.0 ##
2+
- Upgrade to new version of JDBC & SDK
3+
14
## 1.0.1 ##
25
- Fixed bug with `useIndex` - skip the table name (`from view`)
36

47
## 1.0.0 ##
58

6-
- `REPLACE` / `UPSERT` builders from YDB
9+
- `REPLACE` / `UPSERT` builders from YDB
710
- Supported VIEW INDEX from `useIndex("index_name")` HintedTable
811
- Generated tables from schema

jooq-dialect/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/ydb-platform/ydb-java-dialects/blob/main/LICENSE.md)
2-
[![Maven metadata URL](https://img.shields.io/maven-metadata/v?metadataUrl=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2Ftech%2Fydb%2Fdialects%2Fhibernate-ydb-dialect-v5%2Fmaven-metadata.xml)](https://mvnrepository.com/artifact/tech.ydb.dialects/jooq-ydb-dialect)
2+
[![Maven metadata URL](https://img.shields.io/maven-metadata/v?metadataUrl=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2Ftech%2Fydb%2Fdialects%2Fjooq-ydb-dialect%2Fmaven-metadata.xml)](https://mvnrepository.com/artifact/tech.ydb.dialects/jooq-ydb-dialect)
33
[![CI](https://img.shields.io/github/actions/workflow/status/ydb-platform/ydb-java-dialects/ci-jooq-dialect.yaml?branch=main&label=CI)](https://github.com/ydb-platform/ydb-java-dialects/actions/workflows/ci-jooq-dialect.yaml)
44

55
# YDB JOOQ Dialect

jooq-dialect/pom.xml

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<groupId>tech.ydb.dialects</groupId>
66
<artifactId>jooq-ydb-dialect</artifactId>
7-
<version>1.0.1</version>
7+
<version>1.1.0</version>
88

99
<name>YDB JOOQ Dialect module</name>
1010
<description>YDB JOOQ Dialect module</description>
@@ -52,8 +52,8 @@
5252

5353
<jooq.version>3.19.0</jooq.version>
5454

55-
<ydb.sdk.version>2.2.6</ydb.sdk.version>
56-
<ydb.jdbc.version>2.2.3</ydb.jdbc.version>
55+
<ydb.sdk.version>2.3.8</ydb.sdk.version>
56+
<ydb.jdbc.version>2.3.7</ydb.jdbc.version>
5757
</properties>
5858

5959
<dependencies>

jooq-dialect/src/main/java/tech/ydb/jooq/codegen/YdbDatabase.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11
package tech.ydb.jooq.codegen;
22

3+
import java.math.BigDecimal;
4+
import java.util.ArrayList;
5+
import java.util.Collections;
6+
import java.util.List;
7+
38
import org.jooq.*;
49
import org.jooq.impl.DSL;
510
import org.jooq.meta.*;
611
import org.jooq.tools.JooqLogger;
12+
713
import tech.ydb.jdbc.YdbConnection;
814
import tech.ydb.jdbc.context.SchemeExecutor;
915
import tech.ydb.jdbc.context.YdbContext;
@@ -17,11 +23,6 @@
1723
import tech.ydb.table.description.TableIndex;
1824
import tech.ydb.table.settings.DescribeTableSettings;
1925

20-
import java.math.BigDecimal;
21-
import java.util.ArrayList;
22-
import java.util.Collections;
23-
import java.util.List;
24-
2526
public class YdbDatabase extends AbstractDatabase implements ResultQueryDatabase {
2627
private static final JooqLogger log = JooqLogger.getLogger(YdbDatabase.class);
2728

@@ -39,7 +40,7 @@ private YdbContext getContext() {
3940
}
4041

4142
private String getDatabaseName() {
42-
return getContext().getDatabase().substring(1);
43+
return getContext().getPrefixPath().substring(1);
4344
}
4445

4546
@Override

jooq-dialect/src/main/java/tech/ydb/jooq/codegen/YdbTableDefinition.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import java.time.LocalDateTime;
77
import java.util.ArrayList;
88
import java.util.List;
9+
910
import org.jooq.Binding;
1011
import org.jooq.JSON;
1112
import org.jooq.JSONB;
@@ -20,7 +21,7 @@
2021
import org.jooq.types.UInteger;
2122
import org.jooq.types.ULong;
2223
import org.jooq.types.UShort;
23-
import tech.ydb.jdbc.YdbConst;
24+
2425
import tech.ydb.jdbc.impl.YdbTypes;
2526
import tech.ydb.jooq.binding.DateBinding;
2627
import tech.ydb.jooq.binding.DatetimeBinding;
@@ -36,6 +37,7 @@
3637
import tech.ydb.jooq.value.YSON;
3738
import tech.ydb.table.description.TableColumn;
3839
import tech.ydb.table.description.TableDescription;
40+
import tech.ydb.table.values.DecimalType;
3941
import tech.ydb.table.values.Type;
4042

4143
public class YdbTableDefinition extends AbstractTableDefinition {
@@ -71,7 +73,7 @@ protected List<ColumnDefinition> getElements0() {
7173
kind = type.getKind();
7274
}
7375

74-
int decimalDigits = kind == Type.Kind.DECIMAL ? YdbConst.SQL_DECIMAL_DEFAULT_PRECISION : 0;
76+
int decimalDigits = kind == Type.Kind.DECIMAL ? ((DecimalType) type).getPrecision(): 0;
7577

7678
String typeName = type.toString();
7779
Class<? extends Binding<?, ?>> binding = getBinding(typeName);

jooq-dialect/src/test/java/tech/ydb/jooq/BaseTest.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import org.junit.jupiter.api.AfterEach;
1515
import org.junit.jupiter.api.BeforeAll;
1616
import org.junit.jupiter.api.extension.RegisterExtension;
17+
1718
import tech.ydb.test.junit5.YdbHelperExtension;
1819

1920
public abstract class BaseTest {
@@ -66,15 +67,15 @@ protected static List<DateTableRecord> getExampleDateRecords() {
6667
public static void beforeAll() {
6768
dsl = YDB.using(jdbcUrl());
6869

69-
dsl.createTable("series")
70+
dsl.createTableIfNotExists("series")
7071
.column("series_id", YdbTypes.UINT64)
7172
.column("title", YdbTypes.UTF8)
7273
.column("series_info", YdbTypes.UTF8)
7374
.column("release_date", YdbTypes.UINT64)
7475
.primaryKey("series_id")
7576
.execute();
7677

77-
dsl.createTable("seasons")
78+
dsl.createTableIfNotExists("seasons")
7879
.column("series_id", YdbTypes.UINT64)
7980
.column("season_id", YdbTypes.UINT64)
8081
.column("title", YdbTypes.UTF8)
@@ -83,7 +84,7 @@ public static void beforeAll() {
8384
.primaryKey("series_id", "season_id")
8485
.execute();
8586

86-
dsl.createTable("episodes")
87+
dsl.createTableIfNotExists("episodes")
8788
.column("series_id", YdbTypes.UINT64)
8889
.column("season_id", YdbTypes.UINT64)
8990
.column("episode_id", YdbTypes.UINT64)
@@ -92,15 +93,15 @@ public static void beforeAll() {
9293
.primaryKey("series_id", "season_id", "episode_id")
9394
.execute();
9495

95-
dsl.createTable("hard_table")
96+
dsl.createTableIfNotExists("hard_table")
9697
.column("id", YdbTypes.STRING)
9798
.column("first", YdbTypes.JSON)
9899
.column("second", YdbTypes.JSONDOCUMENT)
99100
.column("third", YdbTypes.YSON)
100101
.primaryKey("id")
101102
.execute();
102103

103-
dsl.createTable("date_table")
104+
dsl.createTableIfNotExists("date_table")
104105
.column("id", YdbTypes.UINT64)
105106
.column("int_col", YdbTypes.INT32)
106107
.column("percent", YdbTypes.DOUBLE)
@@ -112,7 +113,7 @@ public static void beforeAll() {
112113
.primaryKey("id")
113114
.execute();
114115

115-
CreateTableElementListStep createQuery = dsl.createTable("numeric").column("id", YdbTypes.INT32);
116+
CreateTableElementListStep createQuery = dsl.createTableIfNotExists("numeric").column("id", YdbTypes.INT32);
116117

117118
for (int i = 1; i <= 23; i++) {
118119
createQuery.column(Integer.toString(i), YdbTypes.INT32);

0 commit comments

Comments
 (0)