This is an automated email from the ASF dual-hosted git repository.

fjtiradosarti pushed a commit to branch main
in repository 
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-runtimes.git


The following commit(s) were added to refs/heads/main by this push:
     new 1601ca42db [Fix #3480] Changing jsonb to varchar (#3484)
1601ca42db is described below

commit 1601ca42dbb3dea21e440fa7fe6258f63de0b5fb
Author: Francisco Javier Tirado Sarti 
<[email protected]>
AuthorDate: Fri Apr 26 11:19:46 2024 +0200

    [Fix #3480] Changing jsonb to varchar (#3484)
    
    * [Fix #3469 Fix #3480] Changing jsonb to varchar
    
    * [Fix #3480]  Change blob to varbinary for ansi
---
 ...ionRepository.java => JDBCCorrelationRepository.java} |  6 +++---
 ...rrelationService.java => JDBCCorrelationService.java} |  8 ++++----
 .../resources/db/ansi/V1.35.0__create_runtime_ansi.sql   | 10 +++++-----
 .../db/ansi/V10.0.1__create_correlation_ansi.sql         |  9 +++++++++
 .../postgresql/V10.0.1__alter_correlation_PostgreSQL.sql |  2 ++
 .../jdbc/correlation/JDBCCorrelationServiceIT.java       |  6 +++---
 .../quarkus/JDBCorrelationServiceProducer.java           | 16 ++--------------
 7 files changed, 28 insertions(+), 29 deletions(-)

diff --git 
a/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationRepository.java
 
b/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationRepository.java
similarity index 97%
rename from 
addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationRepository.java
rename to 
addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationRepository.java
index 1d540705b7..eeebcda901 100644
--- 
a/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationRepository.java
+++ 
b/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationRepository.java
@@ -34,9 +34,9 @@ import org.kie.kogito.jackson.utils.ObjectMapperFactory;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.module.SimpleModule;
 
-public class PostgreSQLCorrelationRepository {
+public class JDBCCorrelationRepository {
 
-    static final String INSERT = "INSERT INTO correlation_instances (id, 
encoded_correlation_id, correlated_id, correlation) VALUES (?, ?, ?, ?::json)";
+    static final String INSERT = "INSERT INTO correlation_instances (id, 
encoded_correlation_id, correlated_id, correlation) VALUES (?, ?, ?, ?)";
     static final String DELETE = "DELETE FROM correlation_instances WHERE 
encoded_correlation_id = ?";
     private static final String FIND_BY_ENCODED_ID = "SELECT correlated_id, 
correlation FROM correlation_instances WHERE encoded_correlation_id = ?";
     private static final String FIND_BY_CORRELATED_ID = "SELECT 
encoded_correlation_id, correlation FROM correlation_instances WHERE 
correlated_id = ?";
@@ -44,7 +44,7 @@ public class PostgreSQLCorrelationRepository {
     private DataSource dataSource;
     private ObjectMapper objectMapper;
 
-    public PostgreSQLCorrelationRepository(DataSource dataSource) {
+    public JDBCCorrelationRepository(DataSource dataSource) {
         this.dataSource = dataSource;
         this.objectMapper = ObjectMapperFactory.get().copy();
 
diff --git 
a/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationService.java
 
b/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationService.java
similarity index 89%
rename from 
addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationService.java
rename to 
addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationService.java
index d4eba66720..d3624064f8 100644
--- 
a/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/PostgreSQLCorrelationService.java
+++ 
b/addons/common/persistence/jdbc/src/main/java/org/kie/kogito/persistence/jdbc/correlation/JDBCCorrelationService.java
@@ -28,13 +28,13 @@ import org.kie.kogito.correlation.CorrelationInstance;
 import org.kie.kogito.correlation.CorrelationService;
 import org.kie.kogito.event.correlation.MD5CorrelationEncoder;
 
-public class PostgreSQLCorrelationService implements CorrelationService {
+public class JDBCCorrelationService implements CorrelationService {
 
-    private PostgreSQLCorrelationRepository repository;
+    private JDBCCorrelationRepository repository;
     private CorrelationEncoder correlationEncoder;
 
-    public PostgreSQLCorrelationService(DataSource dataSource) {
-        this.repository = new PostgreSQLCorrelationRepository(dataSource);
+    public JDBCCorrelationService(DataSource dataSource) {
+        this.repository = new JDBCCorrelationRepository(dataSource);
         this.correlationEncoder = new MD5CorrelationEncoder();
     }
 
diff --git 
a/addons/common/persistence/jdbc/src/main/resources/db/ansi/V1.35.0__create_runtime_ansi.sql
 
b/addons/common/persistence/jdbc/src/main/resources/db/ansi/V1.35.0__create_runtime_ansi.sql
index c8c2f02afd..2868565c5e 100644
--- 
a/addons/common/persistence/jdbc/src/main/resources/db/ansi/V1.35.0__create_runtime_ansi.sql
+++ 
b/addons/common/persistence/jdbc/src/main/resources/db/ansi/V1.35.0__create_runtime_ansi.sql
@@ -1,10 +1,10 @@
 CREATE TABLE process_instances
 (
-    id              CHAR(36)      NOT NULL,
-    payload         BLOB          NOT NULL,
-    process_id      VARCHAR(4000) NOT NULL,
-    version         BIGINT(19),
-    process_version VARCHAR(4000),
+    id              character(36)      NOT NULL,
+    payload         varbinary(1000000) NOT NULL,
+    process_id      character varying(4000) NOT NULL,
+    version         bigint,
+    process_version character varying(4000),
     CONSTRAINT process_instances_pkey PRIMARY KEY (id)
 );
 CREATE INDEX idx_process_instances_process_id ON process_instances 
(process_id, id, process_version);
diff --git 
a/addons/common/persistence/jdbc/src/main/resources/db/ansi/V10.0.1__create_correlation_ansi.sql
 
b/addons/common/persistence/jdbc/src/main/resources/db/ansi/V10.0.1__create_correlation_ansi.sql
new file mode 100644
index 0000000000..14adf0fab3
--- /dev/null
+++ 
b/addons/common/persistence/jdbc/src/main/resources/db/ansi/V10.0.1__create_correlation_ansi.sql
@@ -0,0 +1,9 @@
+CREATE TABLE correlation_instances
+(
+    id                     character(36)         NOT NULL,
+    encoded_correlation_id character varying(36) NOT NULL UNIQUE,
+    correlated_id          character varying(36) NOT NULL,
+    correlation            character varying(8000)     NOT NULL,
+    version                bigint,
+    CONSTRAINT correlation_instances_pkey PRIMARY KEY (id)
+);
\ No newline at end of file
diff --git 
a/addons/common/persistence/jdbc/src/main/resources/db/postgresql/V10.0.1__alter_correlation_PostgreSQL.sql
 
b/addons/common/persistence/jdbc/src/main/resources/db/postgresql/V10.0.1__alter_correlation_PostgreSQL.sql
new file mode 100644
index 0000000000..e7b60997a1
--- /dev/null
+++ 
b/addons/common/persistence/jdbc/src/main/resources/db/postgresql/V10.0.1__alter_correlation_PostgreSQL.sql
@@ -0,0 +1,2 @@
+ALTER TABLE correlation_instances
+ALTER COLUMN correlation TYPE character varying;
diff --git 
a/addons/common/persistence/jdbc/src/test/java/org/kie/persistence/jdbc/correlation/JDBCCorrelationServiceIT.java
 
b/addons/common/persistence/jdbc/src/test/java/org/kie/persistence/jdbc/correlation/JDBCCorrelationServiceIT.java
index f374bf8dad..62212ac0eb 100644
--- 
a/addons/common/persistence/jdbc/src/test/java/org/kie/persistence/jdbc/correlation/JDBCCorrelationServiceIT.java
+++ 
b/addons/common/persistence/jdbc/src/test/java/org/kie/persistence/jdbc/correlation/JDBCCorrelationServiceIT.java
@@ -27,7 +27,7 @@ import org.junit.jupiter.api.Test;
 import org.kie.kogito.correlation.CompositeCorrelation;
 import org.kie.kogito.correlation.CorrelationInstance;
 import org.kie.kogito.correlation.SimpleCorrelation;
-import 
org.kie.kogito.persistence.jdbc.correlation.PostgreSQLCorrelationService;
+import org.kie.kogito.persistence.jdbc.correlation.JDBCCorrelationService;
 import org.kie.kogito.testcontainers.KogitoPostgreSqlContainer;
 import org.postgresql.ds.PGSimpleDataSource;
 import org.testcontainers.containers.JdbcDatabaseContainer;
@@ -42,7 +42,7 @@ public class JDBCCorrelationServiceIT {
     @Container
     private static final KogitoPostgreSqlContainer PG_CONTAINER = new 
KogitoPostgreSqlContainer();
     private static PGSimpleDataSource dataSource;
-    private static PostgreSQLCorrelationService correlationService;
+    private static JDBCCorrelationService correlationService;
 
     @BeforeAll
     public static void setUp() {
@@ -50,7 +50,7 @@ public class JDBCCorrelationServiceIT {
         dataSource.setUrl(PG_CONTAINER.getJdbcUrl());
         dataSource.setUser(PG_CONTAINER.getUsername());
         dataSource.setPassword(PG_CONTAINER.getPassword());
-        correlationService = new PostgreSQLCorrelationService(dataSource);
+        correlationService = new JDBCCorrelationService(dataSource);
         //create table
         //        DDLRunner.init(new GenericRepository(dataSource), true);
         initMigration(PG_CONTAINER, "postgresql");
diff --git 
a/quarkus/addons/persistence/jdbc/runtime/src/main/java/org/kie/kogito/persistence/quarkus/JDBCorrelationServiceProducer.java
 
b/quarkus/addons/persistence/jdbc/runtime/src/main/java/org/kie/kogito/persistence/quarkus/JDBCorrelationServiceProducer.java
index a2bbcbf0a5..f60c26c391 100644
--- 
a/quarkus/addons/persistence/jdbc/runtime/src/main/java/org/kie/kogito/persistence/quarkus/JDBCorrelationServiceProducer.java
+++ 
b/quarkus/addons/persistence/jdbc/runtime/src/main/java/org/kie/kogito/persistence/quarkus/JDBCorrelationServiceProducer.java
@@ -18,29 +18,17 @@
  */
 package org.kie.kogito.persistence.quarkus;
 
-import java.util.Optional;
-
 import javax.sql.DataSource;
 
-import org.eclipse.microprofile.config.inject.ConfigProperty;
 import org.kie.kogito.correlation.CorrelationService;
-import org.kie.kogito.event.correlation.DefaultCorrelationService;
-import 
org.kie.kogito.persistence.jdbc.correlation.PostgreSQLCorrelationService;
+import org.kie.kogito.persistence.jdbc.correlation.JDBCCorrelationService;
 
 import jakarta.enterprise.inject.Produces;
-import jakarta.inject.Inject;
-
-import static 
org.kie.kogito.persistence.quarkus.KogitoAddOnPersistenceJDBCConfigSourceFactory.DATASOURCE_DB_KIND;
-import static 
org.kie.kogito.persistence.quarkus.KogitoAddOnPersistenceJDBCConfigSourceFactory.POSTGRESQL;
 
 public class JDBCorrelationServiceProducer {
 
-    @Inject
-    @ConfigProperty(name = DATASOURCE_DB_KIND)
-    Optional<String> dbKind;
-
     @Produces
     public CorrelationService jdbcCorrelationService(DataSource dataSource) {
-        return dbKind.filter(POSTGRESQL::equals).isPresent() ? new 
PostgreSQLCorrelationService(dataSource) : new DefaultCorrelationService();
+        return new JDBCCorrelationService(dataSource);
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to