You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by ta...@apache.org on 2023/06/05 21:25:45 UTC

[fineract] branch develop updated: [FINERACT-1936] fixing SQL queries that was failing on Maria DB

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

taskain pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git


The following commit(s) were added to refs/heads/develop by this push:
     new 94a552bbd [FINERACT-1936] fixing SQL queries that was failing on Maria DB
94a552bbd is described below

commit 94a552bbde48bb58cbb2284e1d86f52d0840d045
Author: taskain7 <ta...@gmail.com>
AuthorDate: Mon Jun 5 17:34:58 2023 +0200

    [FINERACT-1936] fixing SQL queries that was failing on Maria DB
---
 .../jobs/domain/JobExecutionRepository.java        | 82 +++++++++++-----------
 1 file changed, 41 insertions(+), 41 deletions(-)

diff --git a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/domain/JobExecutionRepository.java b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/domain/JobExecutionRepository.java
index 044b102b8..ca3750a11 100644
--- a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/domain/JobExecutionRepository.java
+++ b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/domain/JobExecutionRepository.java
@@ -54,19 +54,19 @@ public class JobExecutionRepository implements InitializingBean {
     public List<String> getStuckJobNames(NamedParameterJdbcTemplate jdbcTemplate) {
         int threshold = fineractProperties.getJob().getStuckRetryThreshold();
         return jdbcTemplate.queryForList("""
-                SELECT DISTINCT(bji.JOB_NAME) as STUCK_JOB_NAME
-                FROM BATCH_JOB_INSTANCE bji
-                INNER JOIN BATCH_JOB_EXECUTION bje
-                ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
+                SELECT DISTINCT(BJI.JOB_NAME) as STUCK_JOB_NAME
+                FROM BATCH_JOB_INSTANCE BJI
+                INNER JOIN BATCH_JOB_EXECUTION BJE
+                ON BJI.JOB_INSTANCE_ID = BJE.JOB_INSTANCE_ID
                 WHERE
-                    bje.STATUS IN (:statuses)
+                    BJE.STATUS IN (:statuses)
                     AND
-                    bje.JOB_INSTANCE_ID NOT IN (
-                        SELECT bje.JOB_INSTANCE_ID
-                        FROM BATCH_JOB_INSTANCE bji
-                        INNER JOIN BATCH_JOB_EXECUTION bje
-                        ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
-                        WHERE bje.STATUS IN (:completedStatuses)
+                    BJE.JOB_INSTANCE_ID NOT IN (
+                        SELECT IBJE.JOB_INSTANCE_ID
+                        FROM BATCH_JOB_INSTANCE IBJI
+                        INNER JOIN BATCH_JOB_EXECUTION IBJE
+                        ON IBJI.JOB_INSTANCE_ID = IBJE.JOB_INSTANCE_ID
+                        WHERE IBJE.STATUS IN (:completedStatuses)
                     )
                 GROUP BY BJI.JOB_INSTANCE_ID
                 HAVING COUNT(BJI.JOB_INSTANCE_ID) <= :threshold
@@ -77,24 +77,24 @@ public class JobExecutionRepository implements InitializingBean {
     public Long getStuckJobCountByJobName(String jobName) {
         int threshold = fineractProperties.getJob().getStuckRetryThreshold();
         return namedParameterJdbcTemplate.queryForObject("""
-                    SELECT COUNT(DISTINCT bji.JOB_NAME) as STUCK_JOB_COUNT
-                    FROM BATCH_JOB_INSTANCE bji
-                    INNER JOIN BATCH_JOB_EXECUTION bje
-                    ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
+                    SELECT COUNT(DISTINCT BJI.JOB_NAME) as STUCK_JOB_COUNT
+                    FROM BATCH_JOB_INSTANCE BJI
+                    INNER JOIN BATCH_JOB_EXECUTION BJE
+                    ON BJI.JOB_INSTANCE_ID = BJE.JOB_INSTANCE_ID
                     WHERE
-                        bje.STATUS IN (:statuses)
+                        BJE.STATUS IN (:statuses)
                         AND
-                        bji.JOB_NAME = :jobName
+                        BJI.JOB_NAME = :jobName
                         AND
-                        bje.JOB_INSTANCE_ID NOT IN (
-                            SELECT bje.JOB_INSTANCE_ID
-                            FROM BATCH_JOB_INSTANCE bji
-                            INNER JOIN BATCH_JOB_EXECUTION bje
-                            ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
+                        BJE.JOB_INSTANCE_ID NOT IN (
+                            SELECT IBJE.JOB_INSTANCE_ID
+                            FROM BATCH_JOB_INSTANCE IBJI
+                            INNER JOIN BATCH_JOB_EXECUTION IBJE
+                            ON IBJI.JOB_INSTANCE_ID = IBJE.JOB_INSTANCE_ID
                             WHERE
-                                bje.STATUS IN (:completedStatuses)
+                                IBJE.STATUS IN (:completedStatuses)
                                 AND
-                                bji.JOB_NAME = :jobName
+                                IBJI.JOB_NAME = :jobName
                         )
                     GROUP BY BJI.JOB_INSTANCE_ID
                     HAVING COUNT(BJI.JOB_INSTANCE_ID) <= :threshold
@@ -105,24 +105,24 @@ public class JobExecutionRepository implements InitializingBean {
     public List<Long> getStuckJobIdsByJobName(String jobName) {
         int threshold = fineractProperties.getJob().getStuckRetryThreshold();
         return namedParameterJdbcTemplate.queryForList("""
-                    SELECT bje.JOB_EXECUTION_ID
-                    FROM BATCH_JOB_INSTANCE bji
-                    INNER JOIN BATCH_JOB_EXECUTION bje
-                    ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
+                    SELECT BJE.JOB_EXECUTION_ID
+                    FROM BATCH_JOB_INSTANCE BJI
+                    INNER JOIN BATCH_JOB_EXECUTION BJE
+                    ON BJI.JOB_INSTANCE_ID = BJE.JOB_INSTANCE_ID
                     WHERE
-                        bje.STATUS IN (:statuses)
+                        BJE.STATUS IN (:statuses)
                         AND
-                        bji.JOB_NAME = :jobName
+                        BJI.JOB_NAME = :jobName
                         AND
-                        bje.JOB_INSTANCE_ID NOT IN (
-                            SELECT bje.JOB_INSTANCE_ID
-                            FROM BATCH_JOB_INSTANCE bji
-                            INNER JOIN BATCH_JOB_EXECUTION bje
-                            ON bji.JOB_INSTANCE_ID = bje.JOB_INSTANCE_ID
+                        BJE.JOB_INSTANCE_ID NOT IN (
+                            SELECT IBJE.JOB_INSTANCE_ID
+                            FROM BATCH_JOB_INSTANCE IBJI
+                            INNER JOIN BATCH_JOB_EXECUTION IBJE
+                            ON IBJI.JOB_INSTANCE_ID = IBJE.JOB_INSTANCE_ID
                             WHERE
-                            bje.STATUS IN (:completedStatuses)
+                            IBJE.STATUS IN (:completedStatuses)
                             AND
-                            bji.JOB_NAME = :jobName
+                            IBJI.JOB_NAME = :jobName
                         )
                     GROUP BY BJI.JOB_INSTANCE_ID, BJE.JOB_EXECUTION_ID
                     HAVING COUNT(BJI.JOB_INSTANCE_ID) <= :threshold
@@ -133,13 +133,13 @@ public class JobExecutionRepository implements InitializingBean {
     public Long getNotCompletedPartitionsCount(Long jobExecutionId, String partitionerStepName) {
         return namedParameterJdbcTemplate.queryForObject("""
                     SELECT COUNT(bse.STEP_EXECUTION_ID)
-                    FROM BATCH_STEP_EXECUTION bse
+                    FROM BATCH_STEP_EXECUTION BSE
                     WHERE
-                        bse.JOB_EXECUTION_ID = :jobExecutionId
+                        BSE.JOB_EXECUTION_ID = :jobExecutionId
                         AND
-                        bse.STEP_NAME <> :stepName
+                        BSE.STEP_NAME <> :stepName
                         AND
-                        bse.status <> :status
+                        BSE.status <> :status
                 """, Map.of("jobExecutionId", jobExecutionId, "stepName", partitionerStepName, "status", COMPLETED.name()), Long.class);
     }