[jira] [Created] (CAY-2556) Unused MergerToken is generated
Arseni Bulatski created CAY-2556: Summary: Unused MergerToken is generated Key: CAY-2556 URL: https://issues.apache.org/jira/browse/CAY-2556 Project: Cayenne Issue Type: Bug Components: dbimport Affects Versions: 4.1.B2, 4.2.M1 Reporter: Arseni Bulatski Fix For: 4.2.M1 # Drop not null column from db # Run dbImport # This log appears: {code:java} [INFO] Drop Column team_daily_standings.LOSSES_LAST_10_GAMES [INFO] Drop Column team_daily_standings.WINS_LAST_10_GAMES [INFO] Drop Column team_daily_standings.TIES_LAST_10_GAMES [INFO] Drop Column team_daily_standings.OT_LOSSES_LAST_10_GAMES ... [INFO] Set Allow Null team_daily_standings.LOSSES_LAST_10_GAMES [INFO] Set Allow Null team_daily_standings.WINS_LAST_10_GAMES [INFO] Set Allow Null team_daily_standings.TIES_LAST_10_GAMES [INFO] Set Allow Null team_daily_standings.OT_LOSSES_LAST_10_GAMES {code} Token to allow null was created but will never used because this column was dropped before. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[cayenne] branch STABLE-4.1 updated: CompactSlf4jJdbcEventLogger refactoring
This is an automated email from the ASF dual-hosted git repository. abulatski pushed a commit to branch STABLE-4.1 in repository https://gitbox.apache.org/repos/asf/cayenne.git The following commit(s) were added to refs/heads/STABLE-4.1 by this push: new 92d0863 CompactSlf4jJdbcEventLogger refactoring 92d0863 is described below commit 92d0863cb9b963cad17df3fe3792d9fb9a8e662d Author: Arseni Bulatski AuthorDate: Fri Mar 22 11:16:12 2019 +0300 CompactSlf4jJdbcEventLogger refactoring --- .../cayenne/log/CompactSlf4jJdbcEventLogger.java | 25 -- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java index c74cd7a..3879def 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java @@ -18,12 +18,6 @@ / package org.apache.cayenne.log; -import org.apache.cayenne.access.translator.DbAttributeBinding; -import org.apache.cayenne.access.translator.ParameterBinding; -import org.apache.cayenne.configuration.RuntimeProperties; -import org.apache.cayenne.di.Inject; -import org.apache.cayenne.map.DbAttribute; - import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -32,6 +26,12 @@ import java.util.Map; import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.apache.cayenne.access.translator.DbAttributeBinding; +import org.apache.cayenne.access.translator.ParameterBinding; +import org.apache.cayenne.configuration.RuntimeProperties; +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.map.DbAttribute; + /** * @since 4.1 */ @@ -42,6 +42,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { private static final String FROM = "FROM"; private static final char SPACE = ' '; +private static final Pattern UNION_PATTERN = Pattern.compile(UNION, Pattern.CASE_INSENSITIVE); + public CompactSlf4jJdbcEventLogger(@Inject RuntimeProperties runtimeProperties) { super(runtimeProperties); } @@ -53,7 +55,7 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } String str; -if (sql.toUpperCase().contains(UNION)) { +if (UNION_PATTERN.matcher(sql).find()) { str = processUnionSql(sql); } else { str = trimSqlSelectColumns(sql); @@ -63,8 +65,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String processUnionSql(String sql) { -String modified = Pattern.compile(UNION.toLowerCase(), Pattern.CASE_INSENSITIVE) -.matcher(sql).replaceAll(UNION); +String modified = UNION_PATTERN.matcher(sql) +.replaceAll(UNION); String[] queries = modified.split(UNION); return Arrays.stream(queries) .map(this::trimSqlSelectColumns) @@ -72,12 +74,13 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String trimSqlSelectColumns(String sql) { -int selectIndex = sql.toUpperCase().indexOf(SELECT); +String str = sql.toUpperCase(); +int selectIndex = str.indexOf(SELECT); if (selectIndex == -1) { return sql; } selectIndex += SELECT.length(); -int fromIndex = sql.toUpperCase().indexOf(FROM); +int fromIndex = str.indexOf(FROM); String columns = sql.substring(selectIndex, fromIndex); String[] columnsArray = columns.split(","); if (columnsArray.length <= 3) {
[cayenne] branch master updated: CompactSlf4jJdbcEventLogger refactoring
This is an automated email from the ASF dual-hosted git repository. abulatski pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git The following commit(s) were added to refs/heads/master by this push: new 5be5235 CompactSlf4jJdbcEventLogger refactoring 5be5235 is described below commit 5be5235ed1c02589b6300e9729cf3c308c0173e8 Author: Arseni Bulatski AuthorDate: Fri Mar 22 11:16:12 2019 +0300 CompactSlf4jJdbcEventLogger refactoring --- .../cayenne/log/CompactSlf4jJdbcEventLogger.java | 25 -- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java index c74cd7a..3879def 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java @@ -18,12 +18,6 @@ / package org.apache.cayenne.log; -import org.apache.cayenne.access.translator.DbAttributeBinding; -import org.apache.cayenne.access.translator.ParameterBinding; -import org.apache.cayenne.configuration.RuntimeProperties; -import org.apache.cayenne.di.Inject; -import org.apache.cayenne.map.DbAttribute; - import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -32,6 +26,12 @@ import java.util.Map; import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.apache.cayenne.access.translator.DbAttributeBinding; +import org.apache.cayenne.access.translator.ParameterBinding; +import org.apache.cayenne.configuration.RuntimeProperties; +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.map.DbAttribute; + /** * @since 4.1 */ @@ -42,6 +42,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { private static final String FROM = "FROM"; private static final char SPACE = ' '; +private static final Pattern UNION_PATTERN = Pattern.compile(UNION, Pattern.CASE_INSENSITIVE); + public CompactSlf4jJdbcEventLogger(@Inject RuntimeProperties runtimeProperties) { super(runtimeProperties); } @@ -53,7 +55,7 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } String str; -if (sql.toUpperCase().contains(UNION)) { +if (UNION_PATTERN.matcher(sql).find()) { str = processUnionSql(sql); } else { str = trimSqlSelectColumns(sql); @@ -63,8 +65,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String processUnionSql(String sql) { -String modified = Pattern.compile(UNION.toLowerCase(), Pattern.CASE_INSENSITIVE) -.matcher(sql).replaceAll(UNION); +String modified = UNION_PATTERN.matcher(sql) +.replaceAll(UNION); String[] queries = modified.split(UNION); return Arrays.stream(queries) .map(this::trimSqlSelectColumns) @@ -72,12 +74,13 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String trimSqlSelectColumns(String sql) { -int selectIndex = sql.toUpperCase().indexOf(SELECT); +String str = sql.toUpperCase(); +int selectIndex = str.indexOf(SELECT); if (selectIndex == -1) { return sql; } selectIndex += SELECT.length(); -int fromIndex = sql.toUpperCase().indexOf(FROM); +int fromIndex = str.indexOf(FROM); String columns = sql.substring(selectIndex, fromIndex); String[] columnsArray = columns.split(","); if (columnsArray.length <= 3) {