Author: gk
Date: Thu Aug 6 11:28:14 2020
New Revision: 1880635
URL: http://svn.apache.org/viewvc?rev=1880635&view=rev
Log:
Torque 5.0 fixes
-----------------------------------
torque-test
- added test DefaultValuesFromDatabaseTest to docker-testcontainers mysql and postgresql
- added server timezone if running docker test for mysql
- fixes ExecuteStatementsTest for Postgresql
- (double) fix? executeDrop set in torque-test ant-task
- update consistently junit vintage dependency
torque-runtime
- check for a closed connection in TransactionManager rollback method in and log it in ExceptionMapperTest.
torque-templates
- add if exists to drop constraint for postgresql
Added:
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/mysql/DefaultValuesFromDatabaseContainerTest.java
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/postgresql/DefaultValuesFromDatabaseContainerTest.java
Modified:
db/torque/torque4/trunk/pom.xml
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/util/TransactionManagerImpl.java
db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.groovy
db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.vm
db/torque/torque4/trunk/torque-templates/src/test/resources/org/apache/torque/templates/expected-schema-postgresql.sql
db/torque/torque4/trunk/torque-test/pom.xml
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/DefaultValuesFromDatabaseTest.java
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/ExecuteStatementsTest.java
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/junit5/extension/DockerCallbackMySQLExtension.java
db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/util/ExceptionMapperTest.java
db/torque/torque4/trunk/torque-test/src/test/profile/mysql/docker-resources/db/Dockerfile
db/torque/torque4/trunk/torque-test/src/test/profile/postgresql/docker-resources/db/Dockerfile
Modified: db/torque/torque4/trunk/pom.xml
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/pom.xml?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/pom.xml (original)
+++ db/torque/torque4/trunk/pom.xml Thu Aug 6 11:28:14 2020
@@ -420,6 +420,14 @@
<version>${junit.launcher.version}</version>
<scope>test</scope>
</dependency>
+
+
+ <dependency>
+ <groupId>org.junit.vintage</groupId>
+ <artifactId>junit-vintage-engine</artifactId>
+ <version>${junit.jupiter.version}</version>
+ <scope>test</scope>
+ </dependency>
<dependency>
<groupId>junit</groupId>
Modified: db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/util/TransactionManagerImpl.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/util/TransactionManagerImpl.java?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/util/TransactionManagerImpl.java (original)
+++ db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/util/TransactionManagerImpl.java Thu Aug 6 11:28:14 2020
@@ -148,7 +148,10 @@ public class TransactionManagerImpl impl
{
try
{
- if (con.getMetaData().supportsTransactions()
+ if (con.isClosed()) {
+ log.warn("Connection is already closed. "
+ + "Reason could be, if rollback was already called before.");
+ } else if (con.getMetaData().supportsTransactions()
&& !con.getAutoCommit())
{
con.rollback();
Modified: db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.groovy
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.groovy?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.groovy (original)
+++ db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.groovy Thu Aug 6 11:28:14 2020
@@ -22,7 +22,7 @@ ForeignKey foreignKey = torqueGenGroovy.
return """\
ALTER TABLE $foreignKey.parent.name
- DROP CONSTRAINT $foreignKey.name;
+ DROP CONSTRAINT IF EXISTS $foreignKey.name;
"""
Modified: db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.vm
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.vm?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.vm (original)
+++ db/torque/torque4/trunk/torque-templates/src/main/resources/org/apache/torque/templates/sql/templates/ddl/postgresql/dropForeignKey.vm Thu Aug 6 11:28:14 2020
@@ -15,6 +15,6 @@
## specific language governing permissions and limitations
## under the License.
ALTER TABLE $torqueGen.getParent().getAttribute("name")
- DROP CONSTRAINT $name;
+ DROP CONSTRAINT IF EXISTS $name;
Modified: db/torque/torque4/trunk/torque-templates/src/test/resources/org/apache/torque/templates/expected-schema-postgresql.sql
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-templates/src/test/resources/org/apache/torque/templates/expected-schema-postgresql.sql?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-templates/src/test/resources/org/apache/torque/templates/expected-schema-postgresql.sql (original)
+++ db/torque/torque4/trunk/torque-templates/src/test/resources/org/apache/torque/templates/expected-schema-postgresql.sql Thu Aug 6 11:28:14 2020
@@ -21,43 +21,43 @@
ALTER TABLE r_ab
- DROP CONSTRAINT r_ab_FK_1;
+ DROP CONSTRAINT IF EXISTS r_ab_FK_1;
ALTER TABLE r_ab
- DROP CONSTRAINT r_ab_FK_2;
+ DROP CONSTRAINT IF EXISTS r_ab_FK_2;
ALTER TABLE c
- DROP CONSTRAINT c_FK_1;
+ DROP CONSTRAINT IF EXISTS c_FK_1;
ALTER TABLE c
- DROP CONSTRAINT c_FK_2;
+ DROP CONSTRAINT IF EXISTS c_FK_2;
ALTER TABLE c
- DROP CONSTRAINT c_FK_3;
+ DROP CONSTRAINT IF EXISTS c_FK_3;
ALTER TABLE d
- DROP CONSTRAINT d_FK_1;
+ DROP CONSTRAINT IF EXISTS d_FK_1;
ALTER TABLE d
- DROP CONSTRAINT d_FK_2;
+ DROP CONSTRAINT IF EXISTS d_FK_2;
ALTER TABLE MULTIPK_SELF_REFTABLE
- DROP CONSTRAINT MULTIPK_SELF_REFTABLE_FK_1;
+ DROP CONSTRAINT IF EXISTS MULTIPK_SELF_REFTABLE_FK_1;
ALTER TABLE ext_schema
- DROP CONSTRAINT ext_schema_FK_1;
+ DROP CONSTRAINT IF EXISTS ext_schema_FK_1;
ALTER TABLE extext_schema
- DROP CONSTRAINT extext_schema_FK_1;
+ DROP CONSTRAINT IF EXISTS extext_schema_FK_1;
DROP TABLE a CASCADE;
Modified: db/torque/torque4/trunk/torque-test/pom.xml
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/pom.xml?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/pom.xml (original)
+++ db/torque/torque4/trunk/torque-test/pom.xml Thu Aug 6 11:28:14 2020
@@ -101,7 +101,12 @@
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<scope>test</scope>
- </dependency>
+ </dependency>
+ <dependency>
+ <groupId>org.junit.vintage</groupId>
+ <artifactId>junit-vintage-engine</artifactId>
+ <scope>test</scope>
+ </dependency>
<!-- avalon -->
<dependency>
@@ -183,6 +188,8 @@
<delete dir="target/torque"/>
<echo message="Deleting log file torque-test.log"/>
<delete file="target/torque-test.log"/>
+ <echo message="Deleting directory torque-test" /><!-- from derby -->
+ <delete dir="torque-test" />
</target>
</configuration>
<goals>
@@ -228,13 +235,18 @@
<id>test-database-filled</id>
<phase>generate-sources</phase>
<configuration>
- <target>
- <sql driver="${torque.driver}" url="${torque.database.url}"
- userid="${torque.database.user}" password="${torque.database.password}"
- errorproperty="cannot.access.book.table">
+ <target xmlns:if="ant:if" xmlns:unless="ant:unless">
+ <sql driver="${torque.driver}" url="${torque.database.url}" userid="${torque.database.user}" password="${torque.database.password}" errorproperty="cannot.access.book.table" failOnConnectionError="false" onerror="continue">
select count(*) from book;
</sql>
- <property name="executeDrop" value="true"/>
+ <!-- if it aborts book does not exist, no need to drop, set executeDrop, which is exported, to false -->
+ <condition property="executeDrop" value="false">
+ <istrue value="${cannot.access.book.table}"/>
+ </condition>
+ <condition property="executeDrop" value="true">
+ <isfalse value="${cannot.access.book.table}"/>
+ </condition>
+ <echo message="error: ${cannot.access.book.table}: set executeDrop: ${executeDrop}"/>
</target>
<exportAntProperties>true</exportAntProperties>
<failOnError>false</failOnError>
Modified: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/DefaultValuesFromDatabaseTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/DefaultValuesFromDatabaseTest.java?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/DefaultValuesFromDatabaseTest.java (original)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/DefaultValuesFromDatabaseTest.java Thu Aug 6 11:28:14 2020
@@ -1,5 +1,9 @@
package org.apache.torque.generated.peer;
+import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
+
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
@@ -8,6 +12,9 @@ import java.sql.Timestamp;
import java.sql.Types;
import java.text.ParseException;
import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
@@ -38,10 +45,6 @@ import org.apache.torque.util.JdbcTypedV
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.provider.ArgumentsSource;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -187,9 +190,9 @@ public class DefaultValuesFromDatabaseTe
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
.parse("2000-01-02 00:00:00"),
databaseDefaultValues.getDateField());
- assertEquals(
- new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
- .parse("1970-01-01 11:21:31"),
+ assertEquals(
+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
+ .parse("1970-01-01 11:21:31"),
databaseDefaultValues.getTimeField());
assertEquals(
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
@@ -205,15 +208,15 @@ public class DefaultValuesFromDatabaseTe
databaseDefaultValuesSaved.getOInteger());
assertEquals(3, databaseDefaultValuesSaved.getPInt());
assertEquals("Changed!", databaseDefaultValuesSaved.getVarcharField());
- assertEquals(toString(doSelect(toDate("2000-01-02 00:00:00"),
- java.sql.Date.class, adapter)),
- toString(databaseDefaultValuesSaved.getDateField()));
- assertEquals(toString(doSelect(toDate("1970-01-01 11:21:31"),
- java.sql.Time.class, adapter)),
- toString(databaseDefaultValuesSaved.getTimeField()));
- assertEquals(toString(doSelect(toDate("2010-09-08 12:13:14"),
- java.sql.Timestamp.class, adapter)),
- toString(databaseDefaultValuesSaved.getTimestampField()));
+ assertEquals( toString(databaseDefaultValuesSaved.getDateField()),
+ toString(doSelect(toDate("2000-01-02 00:00:00"),
+ java.sql.Date.class, adapter)));
+ assertEquals( toString(databaseDefaultValuesSaved.getTimeField()),
+ toString(doSelect(toDate("1970-01-01 11:21:31"),
+ java.sql.Time.class, adapter)));
+ assertEquals(toString(databaseDefaultValuesSaved.getTimestampField()),
+ toString(doSelect(toDate("2010-09-08 12:13:14"),
+ java.sql.Timestamp.class, adapter)));
}
/**
Modified: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/ExecuteStatementsTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/ExecuteStatementsTest.java?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/ExecuteStatementsTest.java (original)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/generated/peer/ExecuteStatementsTest.java Thu Aug 6 11:28:14 2020
@@ -25,11 +25,17 @@ import java.util.List;
import java.util.Map;
import org.apache.torque.BaseDatabaseTestCase;
+import org.apache.torque.adapter.Adapter;
+import org.apache.torque.adapter.PostgresAdapter;
+import org.apache.torque.junit5.extension.AdapterProvider;
import org.apache.torque.test.dbobject.Author;
import org.apache.torque.test.peer.AuthorPeer;
import org.apache.torque.util.JdbcTypedValue;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Execution;
+import org.junit.jupiter.api.parallel.ExecutionMode;
+import org.junit.jupiter.params.provider.ArgumentsSource;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
@@ -59,15 +65,24 @@ public class ExecuteStatementsTest exten
* @throws Exception if the test fails
*/
@Test
- public void testExecuteStatementWithStringReplacements() throws Exception
+ @ArgumentsSource(AdapterProvider.class)
+ @Execution(ExecutionMode.SAME_THREAD)
+ public void testExecuteStatementWithStringReplacements(Adapter adapter) throws Exception
{
Map<String, JdbcTypedValue> replacements = new HashMap<>();
replacements.put("name", new JdbcTypedValue("Author 1", Types.VARCHAR));
replacements.put("newname", new JdbcTypedValue("Author 1 changed", Types.VARCHAR));
-
+
+ boolean unqualifiedSetColumn = false;
+ if (adapter instanceof PostgresAdapter) {
+ // needs unqualified column in set
+ unqualifiedSetColumn = true;
+ }
+
int updateCount = AuthorPeer.executeStatement(
- "update " + AuthorPeer.TABLE_NAME + " set " + AuthorPeer.NAME + "=:newname where " + AuthorPeer.NAME + "=:name",
+ "update " + AuthorPeer.TABLE_NAME + " set " + ((unqualifiedSetColumn)? AuthorPeer.NAME.getColumnName():AuthorPeer.NAME) + "=:newname where " + AuthorPeer.NAME + "=:name",
replacements);
+
assertEquals(1,updateCount);
authorList.get(0).setName("Author 1 changed");
Modified: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/junit5/extension/DockerCallbackMySQLExtension.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/junit5/extension/DockerCallbackMySQLExtension.java?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/junit5/extension/DockerCallbackMySQLExtension.java (original)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/junit5/extension/DockerCallbackMySQLExtension.java Thu Aug 6 11:28:14 2020
@@ -22,6 +22,7 @@ package org.apache.torque.testcontainer.
import static org.junit.jupiter.api.extension.ConditionEvaluationResult.enabled;
import java.io.File;
+import java.time.ZoneId;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -109,7 +110,7 @@ public class DockerCallbackMySQLExtensio
log.info("fetched container logs: {} ", logs);
throw e;
}
- String jdbcConnectionString = generateJdbcUrl("?loggerLevel=OFF");
+ String jdbcConnectionString = generateJdbcUrl("?loggerLevel=OFF&serverTimezone="+ ZoneId.systemDefault());
context.getStore(Namespace.GLOBAL).put("jdbcConnectionString", jdbcConnectionString);
context.getStore(Namespace.GLOBAL).put("container", getDbContainer());
context.getStore(Namespace.GLOBAL).put("annotatedClass", dockerCallback);
Added: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/mysql/DefaultValuesFromDatabaseContainerTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/mysql/DefaultValuesFromDatabaseContainerTest.java?rev=1880635&view=auto
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/mysql/DefaultValuesFromDatabaseContainerTest.java (added)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/mysql/DefaultValuesFromDatabaseContainerTest.java Thu Aug 6 11:28:14 2020
@@ -0,0 +1,28 @@
+package org.apache.torque.testcontainer.mysql;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.torque.generated.peer.DefaultValuesFromDatabaseTest;
+import org.apache.torque.testcontainer.junit5.extension.DockerMySQLCallback;
+
+@DockerMySQLCallback
+public class DefaultValuesFromDatabaseContainerTest extends DefaultValuesFromDatabaseTest {
+
+}
Added: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/postgresql/DefaultValuesFromDatabaseContainerTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/postgresql/DefaultValuesFromDatabaseContainerTest.java?rev=1880635&view=auto
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/postgresql/DefaultValuesFromDatabaseContainerTest.java (added)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/testcontainer/postgresql/DefaultValuesFromDatabaseContainerTest.java Thu Aug 6 11:28:14 2020
@@ -0,0 +1,28 @@
+package org.apache.torque.testcontainer.postgresql;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.torque.generated.peer.DefaultValuesFromDatabaseTest;
+import org.apache.torque.testcontainer.junit5.extension.DockerPostGresCallback;
+
+@DockerPostGresCallback
+public class DefaultValuesFromDatabaseContainerTest extends DefaultValuesFromDatabaseTest {
+
+}
Modified: db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/util/ExceptionMapperTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/util/ExceptionMapperTest.java?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/util/ExceptionMapperTest.java (original)
+++ db/torque/torque4/trunk/torque-test/src/test/java/org/apache/torque/util/ExceptionMapperTest.java Thu Aug 6 11:28:14 2020
@@ -41,6 +41,8 @@ import org.apache.torque.test.dbobject.B
import org.apache.torque.test.dbobject.SingleNamedUnique;
import org.apache.torque.test.peer.SingleNamedUniquePeer;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Execution;
+import org.junit.jupiter.api.parallel.ExecutionMode;
public class ExceptionMapperTest extends BaseDatabaseTestCase
@@ -160,7 +162,7 @@ public class ExceptionMapperTest extends
}
/**
- * Check that a deadlockExcetion is thrown if two transaction want to access
+ * Check that a deadlockException is thrown if two transaction want to access
* a resource locked by the other thread.
*
* @throws Exception if an error occurs.
@@ -172,7 +174,8 @@ public class ExceptionMapperTest extends
= Torque.getDatabase(Torque.getDefaultDB()).getAdapter();
if (adapter instanceof HsqldbAdapter)
{
- log.warn("hsqldb (2.2.6- 2.5.0) fails to detect the deadlock in this test"
+ log.warn("hsqldb (2.2.6- 2.5.0) fails to detect the deadlock in this test, "
+ + "v 2.5.1 already has a timeout or Database lock acquisition failure, probably already in insertBookstore"
+ " therefore this test is skipped");
return;
}
@@ -288,6 +291,7 @@ public class ExceptionMapperTest extends
}
finally
{
+ // already called safeRollback in SaveAndRollbackThread
Transaction.safeRollback(transaction1);
Transaction.safeRollback(transaction2);
}
@@ -322,7 +326,7 @@ public class ExceptionMapperTest extends
}
catch (TorqueException e)
{
- log.debug(getName() + "caught exception "
+ log.info(getName() + "caught deadlock exception (as expected) "
+ e.getClass().getName());
caughtException = e;
}
Modified: db/torque/torque4/trunk/torque-test/src/test/profile/mysql/docker-resources/db/Dockerfile
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/profile/mysql/docker-resources/db/Dockerfile?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/profile/mysql/docker-resources/db/Dockerfile (original)
+++ db/torque/torque4/trunk/torque-test/src/test/profile/mysql/docker-resources/db/Dockerfile Thu Aug 6 11:28:14 2020
@@ -28,4 +28,6 @@ ENV MYSQL_USER=${MYSQL_USER}
ENV MYSQL_PASSWORD=${MYSQL_PASSWORD}
ENV MYSQL_HOST=%
-ENV MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD}
\ No newline at end of file
+ENV MYSQL_ROOT_PASSWORD=${MYSQL_PASSWORD}
+
+#ENV TZ=Europe/Berlin
\ No newline at end of file
Modified: db/torque/torque4/trunk/torque-test/src/test/profile/postgresql/docker-resources/db/Dockerfile
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-test/src/test/profile/postgresql/docker-resources/db/Dockerfile?rev=1880635&r1=1880634&r2=1880635&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-test/src/test/profile/postgresql/docker-resources/db/Dockerfile (original)
+++ db/torque/torque4/trunk/torque-test/src/test/profile/postgresql/docker-resources/db/Dockerfile Thu Aug 6 11:28:14 2020
@@ -19,7 +19,7 @@ FROM postgres:12.1
COPY ./generated-sql-init /tmp-sql
# dependent sql should be name sorted after id-table-schema.sql
# add what you need, avoid duplicate keys
-RUN cat /tmp-sql/bookstore-schema-idtable-init.sql /tmp-sql/foreign-key-schema-idtable-init.sql /tmp-sql/test-schema-idtable-init.sql /tmp-sql/types-schema-idtable-init.sql > /docker-entrypoint-initdb.d/id-table-sum-init.sql
+RUN cat /tmp-sql/bookstore-schema-idtable-init.sql /tmp-sql/foreign-key-schema-idtable-init.sql /tmp-sql/test-schema-idtable-init.sql /tmp-sql/types-schema-idtable-init.sql /tmp-sql/default-value-schema-idtable-init.sql > /docker-entrypoint-initdb.d/id-table-sum-init.sql
COPY [ "./generated-sql/*", "/docker-entrypoint-initdb.d/" ]
ENV POSTGRES_DB=${POSTGRES_DB}
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.