[JBoss JIRA] (JBTM-3005) Add a quickstart showing the Tomcat and DBCP2
by Michal Karm Babacek (JIRA)
[ https://issues.jboss.org/browse/JBTM-3005?page=com.atlassian.jira.plugin.... ]
Michal Karm Babacek edited comment on JBTM-3005 at 4/9/18 12:17 PM:
--------------------------------------------------------------------
[~zhfeng], do you happen to know what would be needed to make the recovery test run? There seems to be no commit IMHO...
1. I used your [TransactionalDataSourceFactory.java|https://github.com/jbosstm/quickstart...] in {{tomcat-jta/src/main/java/org/jboss/narayana/tomcat/jta/TransactionalDataSourceFactory.java}} with the modification so as it uses Tomcat's provided packages, see [full diff|http://www.mergely.com/6e5JT6ak/].
2. The packaged tomcat-jta jar is in Tomcat's lib, not in the war so as to avoid classloader issues for the time being...
3. context.xml:
{code}
<!-- Narayana resources -->
<Transaction factory="org.jboss.narayana.tomcat.jta.UserTransactionFactory"/>
<Resource name="TransactionManager" type="javax.transaction.TransactionManager"
factory="org.jboss.narayana.tomcat.jta.TransactionManagerFactory"/>
<Resource name="TransactionSynchronizationRegistry" type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.jboss.narayana.tomcat.jta.TransactionSynchronizationRegistryFactory"/>
<!-- Database resources -->
<Resource
name="myDataSource"
uniqueName="myDataSource"
auth="Container"
type="org.postgresql.xa.PGXADataSource"
username="narayana_user"
user="narayana_user"
password="narayana_pass"
url="jdbc:postgresql://127.0.0.1:5432/narayana_db"
portNumber="5432"
serverName="127.0.0.1"
databaseName="narayana_db"
description="Data Source"
loginTimeout="0"
factory="org.postgresql.xa.PGXADataSourceFactory"
/>
<Resource
name="transactionalDataSource"
uniqueName="transactionalDataSource"
auth="Container"
type="javax.sql.DataSource"
transactionManager="TransactionManager"
xaDataSource="myDataSource"
initialSize="20"
maxWaitMillis="15000"
maxTotal="75"
maxIdle="20"
maxAge="120000"
testOnBorrow="true"
validationQuery="select 1"
factory="org.jboss.narayana.tomcat.jta.TransactionalDataSourceFactory"/>
{code}
4. The test source remains the same: See [verifyRecovery|https://github.com/Karm/narayana/blob/narayana-tomcat-ts/t...]
5. It fails:
{noformat}
$ curl localhost:8080/test/executor/recovery -i
HTTP/1.1 500
Recovery failed
{noformat}
6. Database trace:
{noformat}
transaction_id:0 LOG: execute <unnamed>: CREATE TABLE IF NOT EXISTS test (value VARCHAR(100))
transaction_id:0 LOG: execute <unnamed>: BEGIN
transaction_id:0 LOG: execute <unnamed>: INSERT INTO test VALUES ('test-entry-17:57:51.360943')
transaction_id:561 LOG: execute <unnamed>: PREPARE TRANSACTION '131077_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAAMjE=_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAANwAAAAAAAAAA'
transaction_id:0 LOG: execute <unnamed>: SET extra_float_digits = 3
transaction_id:0 LOG: execute <unnamed>: SET application_name = 'PostgreSQL JDBC Driver'
transaction_id:0 LOG: execute <unnamed>: SELECT COUNT(*) FROM test WHERE value='test-entry-17:57:51.360943'
{noformat}
7. Tomcat log (could be more verbose if needed). Note: *Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]*
See:
{noformat}
org.apache.tomcat.util.net.SocketWrapperBase.populateReadBuffer Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@2a697d24:org.apache.tomcat.util.net.NioChannel@346c385c:java.nio.channels.SocketChannel[connected local=/127.0.0.1:8080 remote=/127.0.0.1:33094]], Read from buffer: [0]
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery Verifying recovery
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = false
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = true
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]
org.postgresql.Driver.connect Connecting with URL: jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.postgresql.jdbc.PgConnection.<init> PostgreSQL JDBC Driver 42.2.1
org.postgresql.jdbc.PgConnection.setDefaultFetchSize setDefaultFetchSize = 0
org.postgresql.jdbc.PgConnection.setPrepareThreshold setPrepareThreshold = 5
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Trying to establish a protocol version 3 connection to 127.0.0.1:5432
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Receive Buffer Size is 530,904
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Send Buffer Size is 1,313,280
org.postgresql.ds.common.BaseDataSource.getConnection Created a XA-enabled DataSource from PostgreSQL JDBC Driver 42.2.1 for narayana_user at jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying if database entry exists:false
org.apache.tomcat.util.threads.LimitLatch.countDown Counting down[http-nio-8080-exec-29] latch=1
{noformat}
See JBTM-3004 for example on how you could easily setup my Tomcat + Docker PostgresDB environment...
WDYT? Should I rewrite the test? Is the enlist resource used correctly?
Might interest: [~tomjenkinson], [~rmaucher]
was (Author: mbabacek):
[~zhfeng], do you happen to know what would be needed to make the recovery test run? There seems to be no commit IMHO...
1. I used your [TransactionalDataSourceFactory.java|https://github.com/jbosstm/quickstart...] in {{tomcat-jta/src/main/java/org/jboss/narayana/tomcat/jta/TransactionalDataSourceFactory.java}} with the modification so as it uses Tomcat's provided packages, see [full diff|http://www.mergely.com/6e5JT6ak/].
2. The packaged tomcat-jta jar is in Tomcat's lib, not in the war so as to avoid classloader issues for the time being...
3. context.xml:
{code}
<!-- Narayana resources -->
<Transaction factory="org.jboss.narayana.tomcat.jta.UserTransactionFactory"/>
<Resource name="TransactionManager" type="javax.transaction.TransactionManager"
factory="org.jboss.narayana.tomcat.jta.TransactionManagerFactory"/>
<Resource name="TransactionSynchronizationRegistry" type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.jboss.narayana.tomcat.jta.TransactionSynchronizationRegistryFactory"/>
<!-- Database resources -->
<Resource
name="myDataSource"
uniqueName="myDataSource"
auth="Container"
type="org.postgresql.xa.PGXADataSource"
username="narayana_user"
user="narayana_user"
password="narayana_pass"
url="jdbc:postgresql://127.0.0.1:5432/narayana_db"
portNumber="5432"
serverName="127.0.0.1"
databaseName="narayana_db"
description="Data Source"
loginTimeout="0"
factory="org.postgresql.xa.PGXADataSourceFactory"
/>
<Resource
name="transactionalDataSource"
uniqueName="transactionalDataSource"
auth="Container"
type="javax.sql.DataSource"
transactionManager="TransactionManager"
xaDataSource="myDataSource"
initialSize="20"
maxWaitMillis="15000"
maxTotal="75"
maxIdle="20"
maxAge="120000"
testOnBorrow="true"
validationQuery="select 1"
factory="org.jboss.narayana.tomcat.jta.TransactionalDataSourceFactory"/>
{code}
4. The test source remains the same: See [verifyRecovery|https://github.com/Karm/narayana/blob/narayana-tomcat-ts/t...]
5. It fails:
{noformat}
$ curl localhost:8080/test/executor/recovery -i
HTTP/1.1 500
Recovery failed
{noformat}
6. Database trace:
{noformat}
transaction_id:0 LOG: execute <unnamed>: CREATE TABLE IF NOT EXISTS test (value VARCHAR(100))
transaction_id:0 LOG: execute <unnamed>: BEGIN
transaction_id:0 LOG: execute <unnamed>: INSERT INTO test VALUES ('test-entry-17:57:51.360943')
transaction_id:561 LOG: execute <unnamed>: PREPARE TRANSACTION '131077_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAAMjE=_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAANwAAAAAAAAAA'
transaction_id:0 LOG: execute <unnamed>: SET extra_float_digits = 3
transaction_id:0 LOG: execute <unnamed>: SET application_name = 'PostgreSQL JDBC Driver'
transaction_id:0 LOG: execute <unnamed>: SELECT COUNT(*) FROM test WHERE value='test-entry-17:57:51.360943'
{noformat}
7. Tomcat log (could be more verbose if needed). Note: {{ Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]}}
See:
{noformat}
org.apache.tomcat.util.net.SocketWrapperBase.populateReadBuffer Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@2a697d24:org.apache.tomcat.util.net.NioChannel@346c385c:java.nio.channels.SocketChannel[connected local=/127.0.0.1:8080 remote=/127.0.0.1:33094]], Read from buffer: [0]
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery Verifying recovery
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = false
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = true
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]
org.postgresql.Driver.connect Connecting with URL: jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.postgresql.jdbc.PgConnection.<init> PostgreSQL JDBC Driver 42.2.1
org.postgresql.jdbc.PgConnection.setDefaultFetchSize setDefaultFetchSize = 0
org.postgresql.jdbc.PgConnection.setPrepareThreshold setPrepareThreshold = 5
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Trying to establish a protocol version 3 connection to 127.0.0.1:5432
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Receive Buffer Size is 530,904
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Send Buffer Size is 1,313,280
org.postgresql.ds.common.BaseDataSource.getConnection Created a XA-enabled DataSource from PostgreSQL JDBC Driver 42.2.1 for narayana_user at jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying if database entry exists:false
org.apache.tomcat.util.threads.LimitLatch.countDown Counting down[http-nio-8080-exec-29] latch=1
{noformat}
See JBTM-3004 for example on how you could easily setup my Tomcat + Docker PostgresDB environment...
WDYT? Should I rewrite the test? Is the enlist resource used correctly?
Might interest: [~tomjenkinson], [~rmaucher]
> Add a quickstart showing the Tomcat and DBCP2
> ---------------------------------------------
>
> Key: JBTM-3005
> URL: https://issues.jboss.org/browse/JBTM-3005
> Project: JBoss Transaction Manager
> Issue Type: Task
> Components: Demonstrator
> Reporter: Amos Feng
> Assignee: Amos Feng
> Fix For: 5.next
>
>
> This quickstart needs to show how to use the DBCP2 in Tomcat to support the XA transaction.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 7 months
[JBoss JIRA] (JBTM-3005) Add a quickstart showing the Tomcat and DBCP2
by Michal Karm Babacek (JIRA)
[ https://issues.jboss.org/browse/JBTM-3005?page=com.atlassian.jira.plugin.... ]
Michal Karm Babacek edited comment on JBTM-3005 at 4/9/18 12:16 PM:
--------------------------------------------------------------------
[~zhfeng], do you happen to know what would be needed to make the recovery test run? There seems to be no commit IMHO...
1. I used your [TransactionalDataSourceFactory.java|https://github.com/jbosstm/quickstart...] in {{tomcat-jta/src/main/java/org/jboss/narayana/tomcat/jta/TransactionalDataSourceFactory.java}} with the modification so as it uses Tomcat's provided packages, see [full diff|http://www.mergely.com/6e5JT6ak/].
2. The packaged tomcat-jta jar is in Tomcat's lib, not in the war so as to avoid classloader issues for the time being...
3. context.xml:
{code}
<!-- Narayana resources -->
<Transaction factory="org.jboss.narayana.tomcat.jta.UserTransactionFactory"/>
<Resource name="TransactionManager" type="javax.transaction.TransactionManager"
factory="org.jboss.narayana.tomcat.jta.TransactionManagerFactory"/>
<Resource name="TransactionSynchronizationRegistry" type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.jboss.narayana.tomcat.jta.TransactionSynchronizationRegistryFactory"/>
<!-- Database resources -->
<Resource
name="myDataSource"
uniqueName="myDataSource"
auth="Container"
type="org.postgresql.xa.PGXADataSource"
username="narayana_user"
user="narayana_user"
password="narayana_pass"
url="jdbc:postgresql://127.0.0.1:5432/narayana_db"
portNumber="5432"
serverName="127.0.0.1"
databaseName="narayana_db"
description="Data Source"
loginTimeout="0"
factory="org.postgresql.xa.PGXADataSourceFactory"
/>
<Resource
name="transactionalDataSource"
uniqueName="transactionalDataSource"
auth="Container"
type="javax.sql.DataSource"
transactionManager="TransactionManager"
xaDataSource="myDataSource"
initialSize="20"
maxWaitMillis="15000"
maxTotal="75"
maxIdle="20"
maxAge="120000"
testOnBorrow="true"
validationQuery="select 1"
factory="org.jboss.narayana.tomcat.jta.TransactionalDataSourceFactory"/>
{code}
4. The test source remains the same: See [verifyRecovery|https://github.com/Karm/narayana/blob/narayana-tomcat-ts/t...]
5. It fails:
{noformat}
$ curl localhost:8080/test/executor/recovery -i
HTTP/1.1 500
Recovery failed
{noformat}
6. Database trace:
{noformat}
transaction_id:0 LOG: execute <unnamed>: CREATE TABLE IF NOT EXISTS test (value VARCHAR(100))
transaction_id:0 LOG: execute <unnamed>: BEGIN
transaction_id:0 LOG: execute <unnamed>: INSERT INTO test VALUES ('test-entry-17:57:51.360943')
transaction_id:561 LOG: execute <unnamed>: PREPARE TRANSACTION '131077_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAAMjE=_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAANwAAAAAAAAAA'
transaction_id:0 LOG: execute <unnamed>: SET extra_float_digits = 3
transaction_id:0 LOG: execute <unnamed>: SET application_name = 'PostgreSQL JDBC Driver'
transaction_id:0 LOG: execute <unnamed>: SELECT COUNT(*) FROM test WHERE value='test-entry-17:57:51.360943'
{noformat}
7. Tomcat log (could be more verbose if needed). Note: {{ Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]}}
See:
{noformat}
org.apache.tomcat.util.net.SocketWrapperBase.populateReadBuffer Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@2a697d24:org.apache.tomcat.util.net.NioChannel@346c385c:java.nio.channels.SocketChannel[connected local=/127.0.0.1:8080 remote=/127.0.0.1:33094]], Read from buffer: [0]
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery Verifying recovery
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = false
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = true
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]
org.postgresql.Driver.connect Connecting with URL: jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.postgresql.jdbc.PgConnection.<init> PostgreSQL JDBC Driver 42.2.1
org.postgresql.jdbc.PgConnection.setDefaultFetchSize setDefaultFetchSize = 0
org.postgresql.jdbc.PgConnection.setPrepareThreshold setPrepareThreshold = 5
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Trying to establish a protocol version 3 connection to 127.0.0.1:5432
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Receive Buffer Size is 530,904
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Send Buffer Size is 1,313,280
org.postgresql.ds.common.BaseDataSource.getConnection Created a XA-enabled DataSource from PostgreSQL JDBC Driver 42.2.1 for narayana_user at jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying if database entry exists:false
org.apache.tomcat.util.threads.LimitLatch.countDown Counting down[http-nio-8080-exec-29] latch=1
{noformat}
See JBTM-3004 for example on how you could easily setup my Tomcat + Docker PostgresDB environment...
WDYT? Should I rewrite the test? Is the enlist resource used correctly?
Might interest: [~tomjenkinson], [~rmaucher]
was (Author: mbabacek):
[~zhfeng], do you happen to know what would be needed to make the recovery test run? There seems to be no commit IMHO...
1. I used your [TransactionalDataSourceFactory.java|https://github.com/jbosstm/quickstart...] in {{tomcat-jta/src/main/java/org/jboss/narayana/tomcat/jta/TransactionalDataSourceFactory.java}} with the modification so as it uses Tomcat's provided packages, see [full diff|http://www.mergely.com/6e5JT6ak/].
2. The packaged tomcat-jta jar is in Tomcat's lib, not in the war so as to avoid classloader issues for the time being...
3. context.xml:
{code}
<!-- Narayana resources -->
<Transaction factory="org.jboss.narayana.tomcat.jta.UserTransactionFactory"/>
<Resource name="TransactionManager" type="javax.transaction.TransactionManager"
factory="org.jboss.narayana.tomcat.jta.TransactionManagerFactory"/>
<Resource name="TransactionSynchronizationRegistry" type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.jboss.narayana.tomcat.jta.TransactionSynchronizationRegistryFactory"/>
<!-- Database resources -->
<Resource
name="myDataSource"
uniqueName="myDataSource"
auth="Container"
type="org.postgresql.xa.PGXADataSource"
username="narayana_user"
user="narayana_user"
password="narayana_pass"
url="jdbc:postgresql://127.0.0.1:5432/narayana_db"
portNumber="5432"
serverName="127.0.0.1"
databaseName="narayana_db"
description="Data Source"
loginTimeout="0"
factory="org.postgresql.xa.PGXADataSourceFactory"
/>
<Resource
name="transactionalDataSource"
uniqueName="transactionalDataSource"
auth="Container"
type="javax.sql.DataSource"
transactionManager="TransactionManager"
xaDataSource="myDataSource"
initialSize="20"
maxWaitMillis="15000"
maxTotal="75"
maxIdle="20"
maxAge="120000"
testOnBorrow="true"
validationQuery="select 1"
factory="org.jboss.narayana.tomcat.jta.TransactionalDataSourceFactory"/>
{code}
4. The test source remains the same: See [verifyRecovery|https://github.com/Karm/narayana/blob/narayana-tomcat-ts/t...]
5. It fails:
{noformat}
$ curl localhost:8080/test/executor/recovery -i
HTTP/1.1 500
Recovery failed
{noformat}
6. Database trace:
{noformat}
transaction_id:0 LOG: execute <unnamed>: CREATE TABLE IF NOT EXISTS test (value VARCHAR(100))
transaction_id:0 LOG: execute <unnamed>: BEGIN
transaction_id:0 LOG: execute <unnamed>: INSERT INTO test VALUES ('test-entry-17:57:51.360943')
transaction_id:561 LOG: execute <unnamed>: PREPARE TRANSACTION '131077_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAAMjE=_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAANwAAAAAAAAAA'
transaction_id:0 LOG: execute <unnamed>: SET extra_float_digits = 3
transaction_id:0 LOG: execute <unnamed>: SET application_name = 'PostgreSQL JDBC Driver'
transaction_id:0 LOG: execute <unnamed>: SELECT COUNT(*) FROM test WHERE value='test-entry-17:57:51.360943'
{noforamt}
7. Tomcat log (could be more verbose if needed). Note: {{ Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]}}
See:
{noformat}
org.apache.tomcat.util.net.SocketWrapperBase.populateReadBuffer Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@2a697d24:org.apache.tomcat.util.net.NioChannel@346c385c:java.nio.channels.SocketChannel[connected local=/127.0.0.1:8080 remote=/127.0.0.1:33094]], Read from buffer: [0]
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery Verifying recovery
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = false
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = true
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]
org.postgresql.Driver.connect Connecting with URL: jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.postgresql.jdbc.PgConnection.<init> PostgreSQL JDBC Driver 42.2.1
org.postgresql.jdbc.PgConnection.setDefaultFetchSize setDefaultFetchSize = 0
org.postgresql.jdbc.PgConnection.setPrepareThreshold setPrepareThreshold = 5
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Trying to establish a protocol version 3 connection to 127.0.0.1:5432
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Receive Buffer Size is 530,904
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Send Buffer Size is 1,313,280
org.postgresql.ds.common.BaseDataSource.getConnection Created a XA-enabled DataSource from PostgreSQL JDBC Driver 42.2.1 for narayana_user at jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying if database entry exists:false
org.apache.tomcat.util.threads.LimitLatch.countDown Counting down[http-nio-8080-exec-29] latch=1
{noformat}
See JBTM-3004 for example on how you could easily setup my Tomcat + Docker PostgresDB environment...
WDYT? Should I rewrite the test? Is the enlist resource used correctly?
Might interest: [~tomjenkinson], [~rmaucher]
> Add a quickstart showing the Tomcat and DBCP2
> ---------------------------------------------
>
> Key: JBTM-3005
> URL: https://issues.jboss.org/browse/JBTM-3005
> Project: JBoss Transaction Manager
> Issue Type: Task
> Components: Demonstrator
> Reporter: Amos Feng
> Assignee: Amos Feng
> Fix For: 5.next
>
>
> This quickstart needs to show how to use the DBCP2 in Tomcat to support the XA transaction.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 7 months
[JBoss JIRA] (JBTM-3005) Add a quickstart showing the Tomcat and DBCP2
by Michal Karm Babacek (JIRA)
[ https://issues.jboss.org/browse/JBTM-3005?page=com.atlassian.jira.plugin.... ]
Michal Karm Babacek commented on JBTM-3005:
-------------------------------------------
[~zhfeng], do you happen to know what would be needed to make the recovery test run? There seems to be no commit IMHO...
1. I used your [TransactionalDataSourceFactory.java|https://github.com/jbosstm/quickstart...] in {{tomcat-jta/src/main/java/org/jboss/narayana/tomcat/jta/TransactionalDataSourceFactory.java}} with the modification so as it uses Tomcat's provided packages, see [full diff|http://www.mergely.com/6e5JT6ak/].
2. The packaged tomcat-jta jar is in Tomcat's lib, not in the war so as to avoid classloader issues for the time being...
3. context.xml:
{code}
<!-- Narayana resources -->
<Transaction factory="org.jboss.narayana.tomcat.jta.UserTransactionFactory"/>
<Resource name="TransactionManager" type="javax.transaction.TransactionManager"
factory="org.jboss.narayana.tomcat.jta.TransactionManagerFactory"/>
<Resource name="TransactionSynchronizationRegistry" type="javax.transaction.TransactionSynchronizationRegistry"
factory="org.jboss.narayana.tomcat.jta.TransactionSynchronizationRegistryFactory"/>
<!-- Database resources -->
<Resource
name="myDataSource"
uniqueName="myDataSource"
auth="Container"
type="org.postgresql.xa.PGXADataSource"
username="narayana_user"
user="narayana_user"
password="narayana_pass"
url="jdbc:postgresql://127.0.0.1:5432/narayana_db"
portNumber="5432"
serverName="127.0.0.1"
databaseName="narayana_db"
description="Data Source"
loginTimeout="0"
factory="org.postgresql.xa.PGXADataSourceFactory"
/>
<Resource
name="transactionalDataSource"
uniqueName="transactionalDataSource"
auth="Container"
type="javax.sql.DataSource"
transactionManager="TransactionManager"
xaDataSource="myDataSource"
initialSize="20"
maxWaitMillis="15000"
maxTotal="75"
maxIdle="20"
maxAge="120000"
testOnBorrow="true"
validationQuery="select 1"
factory="org.jboss.narayana.tomcat.jta.TransactionalDataSourceFactory"/>
{code}
4. The test source remains the same: See [verifyRecovery|https://github.com/Karm/narayana/blob/narayana-tomcat-ts/t...]
5. It fails:
{noformat}
$ curl localhost:8080/test/executor/recovery -i
HTTP/1.1 500
Recovery failed
{noformat}
6. Database trace:
{noformat}
transaction_id:0 LOG: execute <unnamed>: CREATE TABLE IF NOT EXISTS test (value VARCHAR(100))
transaction_id:0 LOG: execute <unnamed>: BEGIN
transaction_id:0 LOG: execute <unnamed>: INSERT INTO test VALUES ('test-entry-17:57:51.360943')
transaction_id:561 LOG: execute <unnamed>: PREPARE TRANSACTION '131077_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAAMjE=_AAAAAAAAAAAAAP//fwAAAQAApWFay1tIAAAANwAAAAAAAAAA'
transaction_id:0 LOG: execute <unnamed>: SET extra_float_digits = 3
transaction_id:0 LOG: execute <unnamed>: SET application_name = 'PostgreSQL JDBC Driver'
transaction_id:0 LOG: execute <unnamed>: SELECT COUNT(*) FROM test WHERE value='test-entry-17:57:51.360943'
{noforamt}
7. Tomcat log (could be more verbose if needed). Note: {{ Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]}}
See:
{noformat}
org.apache.tomcat.util.net.SocketWrapperBase.populateReadBuffer Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@2a697d24:org.apache.tomcat.util.net.NioChannel@346c385c:java.nio.channels.SocketChannel[connected local=/127.0.0.1:8080 remote=/127.0.0.1:33094]], Read from buffer: [0]
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery Verifying recovery
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = false
org.postgresql.jdbc.PgConnection.setAutoCommit setAutoCommit = true
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying TestXAResource methods. Expected=[start, end, prepare, commit], actual=[start, end, prepare]
org.postgresql.Driver.connect Connecting with URL: jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.postgresql.jdbc.PgConnection.<init> PostgreSQL JDBC Driver 42.2.1
org.postgresql.jdbc.PgConnection.setDefaultFetchSize setDefaultFetchSize = 0
org.postgresql.jdbc.PgConnection.setPrepareThreshold setPrepareThreshold = 5
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Trying to establish a protocol version 3 connection to 127.0.0.1:5432
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Receive Buffer Size is 530,904
org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl Send Buffer Size is 1,313,280
org.postgresql.ds.common.BaseDataSource.getConnection Created a XA-enabled DataSource from PostgreSQL JDBC Driver 42.2.1 for narayana_user at jdbc:postgresql://127.0.0.1:5432/narayana_db?user=narayana_user&password=narayana_pass&loginTimeout=0
org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.didRecoveryHappen Verifying if database entry exists:false
org.apache.tomcat.util.threads.LimitLatch.countDown Counting down[http-nio-8080-exec-29] latch=1
{noformat}
See JBTM-3004 for example on how you could easily setup my Tomcat + Docker PostgresDB environment...
WDYT? Should I rewrite the test? Is the enlist resource used correctly?
Might interest: [~tomjenkinson], [~rmaucher]
> Add a quickstart showing the Tomcat and DBCP2
> ---------------------------------------------
>
> Key: JBTM-3005
> URL: https://issues.jboss.org/browse/JBTM-3005
> Project: JBoss Transaction Manager
> Issue Type: Task
> Components: Demonstrator
> Reporter: Amos Feng
> Assignee: Amos Feng
> Fix For: 5.next
>
>
> This quickstart needs to show how to use the DBCP2 in Tomcat to support the XA transaction.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 7 months
[JBoss JIRA] (JBTM-3006) Tooling delete operation can left hanging remote txn branch when it was subordinate prepared participant
by Ondra Chaloupka (JIRA)
[ https://issues.jboss.org/browse/JBTM-3006?page=com.atlassian.jira.plugin.... ]
Ondra Chaloupka closed JBTM-3006.
---------------------------------
Resolution: Rejected
Decided not being a valid issue.
> Tooling delete operation can left hanging remote txn branch when it was subordinate prepared participant
> --------------------------------------------------------------------------------------------------------
>
> Key: JBTM-3006
> URL: https://issues.jboss.org/browse/JBTM-3006
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 5.8.0.Final
> Reporter: Ondra Chaloupka
> Assignee: Ondra Chaloupka
> Priority: Minor
> Attachments: data-subordinate.zip, jboss-cli-commands.txt, standalone-full.xml
>
>
> When administrator decides to call 'delete' in WFLY (or as jmx mbean call) and the transaction is subordinate (meaning started by another server and the context was propagated to this one) then if they are in heuristic state the transaction is removed from the narayana object store and from the RA. If the transaction is in prepared state then participant is removed from narayana object store (that could be influenced by settings of {{ignoreMBeanHeuristics}} property, see https://github.com/jbosstm/narayana/blob/master/ArjunaCore/arjuna/classes...) but the transaction branch at the RA is left untouched - [XAResource.forget|https://docs.oracle.com/javaee/7/api/javax/transaction/...] is called but it fails at the participant remote branch (see [XA spec|pubs.opengroup.org/onlinepubs/009680699/toc.pdf) - the XA spec permits calling {{forget}} only on heuristically finished branches but this is still {{prepared}}.
> The final outcome is that there is removed record from Narayana object store and left untouched in-doubt (prepared) remote branch.
> Such record should be handled by recovery (ideally) the {{SubordinateJTAXAResourceOrphanFilter}} votes for rollback but then the {{SubordinationManagerXAResourceOrphanFilter}} forces to leave it as it is. Thus such record will be handing forever.
> {code}
> TRACE [com.arjuna.ats.arjuna] (Periodic Recovery) OutputObjectState::OutputObjectState()
> DEBUG [com.arjuna.ats.jta] (Periodic Recovery) No record found for < formatId=131077, gtrid_length=29, bqual_length=37, tx_uid=0:ffff0a280466:-51bd8cd:5aa92b2b:1c, node_name=1, branch_uid=0:ffff0a280466:758014d3:5aa92b2f:26, subordinatenodename=2, eis_name=java:/JmsXA NodeId:2bda713c-2790-11e8-8b4f-0a0027000000 >
> DEBUG [com.arjuna.ats.jta] (Periodic Recovery) XAResourceOrphanFilter com.arjuna.ats.internal.jta.recovery.arjunacore.SubordinateJTAXAResourceOrphanFilter voted ROLLBACK
> DEBUG [com.arjuna.ats.jta] (Periodic Recovery) subordinate node name of < formatId=131077, gtrid_length=29, bqual_length=37, tx_uid=0:ffff0a280466:-51bd8cd:5aa92b2b:1c, node_name=1, branch_uid=0:ffff0a280466:758014d3:5aa92b2f:26, subordinatenodename=2, eis_name=java:/JmsXA NodeId:2bda713c-2790-11e8-8b4f-0a0027000000 > is 2
> TRACE [com.arjuna.ats.jta] (Periodic Recovery) TransactionImple.getStatus: javax.transaction.Status.STATUS_UNKNOWN
> DEBUG [com.arjuna.ats.jta] (Periodic Recovery) XAResourceOrphanFilter com.arjuna.ats.internal.jta.recovery.arjunacore.SubordinationManagerXAResourceOrphanFilter voted LEAVE_ALONE
> TRACE [com.arjuna.ats.arjuna] (Periodic Recovery) RecoveryXids isStale Check org.jboss.activemq.artemis.wildfly.integration.WildFlyActiveMQXAResourceWrapper@3397522a 1521650139598 1521650140600 true
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (JBTM-3004) "Connection is already associated with a different transaction" with Tomcat JDBC pool, XA
by Michal Karm Babacek (JIRA)
[ https://issues.jboss.org/browse/JBTM-3004?page=com.atlassian.jira.plugin.... ]
Michal Karm Babacek closed JBTM-3004.
-------------------------------------
Resolution: Won't Fix
Closing the issue. Tomcat JDBC pool won't be used after all.
The currently examined is Tomcat DBCP2 with added managed package and a specialized DS factory.
> "Connection is already associated with a different transaction" with Tomcat JDBC pool, XA
> -----------------------------------------------------------------------------------------
>
> Key: JBTM-3004
> URL: https://issues.jboss.org/browse/JBTM-3004
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: JTA
> Affects Versions: 5.next
> Environment: Tomcat 9.0.4, Tomcat JDBC Pool, PostgreSQL 10, Oracle JDK 8, Centos 7 x86_64
> Reporter: Michal Karm Babacek
> Assignee: Amos Feng
> Priority: Critical
> Labels: tomcat
> Attachments: test.war
>
>
> h2. Goal
> To have a transaction manager taking care of XA capable data source with pooled connection to the database.
> h2. Means
> There are two pools in the Tomcat distribution, [Tomcat DBCP2|https://github.com/apache/tomcat/tree/TOMCAT_9_0_4/java/org/apache/...] and [Tomcat JDBC|https://github.com/apache/tomcat/tree/TOMCAT_9_0_4/modules/jdbc-pool...]. We choose [Tomcat JDBC|https://github.com/apache/tomcat/tree/TOMCAT_9_0_4/modules/jdbc-pool...], because [Tomcat DBCP2|https://github.com/apache/tomcat/tree/TOMCAT_9_0_4/java/org/apache/...] does not contain XA capability. XA classes, the whole [managed package from Apache Commons DBCP2|https://github.com/apache/commons-dbcp/tree/master/src/main/java/or...] is removed in the Tomcat distribution.
> h3. Configuration
> With this [simple recovery test application|https://github.com/Karm/narayana/tree/narayana-tomcat-ts/tomc...], the following is our configuration (PostgreSQL flavored): [context.xml|https://gist.github.com/Karm/0b3b06f1cd4dd359eaa0868c28c83397]. Note the disabled Arjuna connection pooling on [line 37|https://gist.github.com/Karm/0b3b06f1cd4dd359eaa0868c28c83397#file-con...] and Tomcat JDBC Pool DataSourceFactory on [line 41|https://gist.github.com/Karm/0b3b06f1cd4dd359eaa0868c28c83397#file-con...].
> h3. Test
> The test as it is written right now works just fine except for an IllegalStateException thrown while Tomcat is being shut down, see [line 494|https://gist.github.com/Karm/6854a09b113474f5c464282bba1c706c#file-gi...]. If you [run it with PostgreSQL Docker container as described in the doc|https://github.com/Karm/narayana/tree/narayana-tomcat-ts/tomcat#3-con...] the test passes, i.e. the recovery works just fine. See the log including [database trace|https://gist.github.com/Karm/6854a09b113474f5c464282bba1c706c#file-...].
> h3. Failure
> You can either [run the test suite|https://github.com/Karm/narayana/tree/narayana-tomcat-ts/tomcat#3-c...] or you can do it manually according to what I prepared here for you. The only expected thing is a modern Linux kernel, docker installed and this rather
> insecure setup in your /etc/sysconfig/docker, add: {{-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock}} to {{OPTIONS}}.
> The setup script looks like this: [setup.sh|https://gist.github.com/Karm/f220076e435124f60256f29ceca9826f]
> Download the attached built [^test.war] to the same dir as the script.
> When you run the script yo should have PostgreSQL in container running and also Tomcat 9.0.4 configured and running.
> The first "test" is JNDI lookup and it is fine:
> {noformat}
> karm@local:~$ curl localhost:8080/test/executor/jndi -i
> HTTP/1.1 204
> Date: Wed, 28 Mar 2018 12:35:55 GMT
> {noformat}
> Then the recovery test, when executed *once and for the first time* also passes:
> {noformat}
> karm@local:~$ curl localhost:8080/test/executor/recovery -i
> HTTP/1.1 204
> Date: Wed, 28 Mar 2018 12:36:13 GMT
> {noformat}
> You can observe trace log on Tomcat's log and also take a look into the database trace. For the purpose of convenience in the test suite, the container as it is started right now does not log to std out, it logs into a file inside itself, see:
> {noformat}
> karm@local:~/workspaceRH/narayana-play$ docker -H=tcp://127.0.0.1:2375 exec -it narayana_db bash
> root@fb6e220cded5:/# tail -f /tmp/db.log
> 2018-03-28 12:27:23.730 UTC transaction_id:0LOG: database system was shut down at 2018-03-28 12:27:23 UTC
> 2018-03-28 12:27:23.742 UTC transaction_id:0LOG: database system is ready to accept connections
> {noformat}
> h4. Connection is already associated with a different transaction!
> When you call the app second time, it fails:
> {noformat}
> karm@local:~$ curl localhost:8080/test/executor/recovery -i
> HTTP/1.1 500
> Content-Type: text/html;charset=utf-8
> Content-Language: en
> Content-Length: 5725
> Date: Wed, 28 Mar 2018 12:36:24 GMT
> Connection: close
> java.sql.SQLException: ARJUNA017003: Checking transaction and found that this connection is already associated with a different transaction! Obtain a new connection for this transaction.
> org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:77)
> org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:220)
> org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:175)
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:418)
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:209)
> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221)
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
> </pre><p><b>Root Cause</b></p><pre>java.sql.SQLException: ARJUNA017003: Checking transaction and found that this connection is already associated with a different transaction! Obtain a new connection for this transaction.
> com.arjuna.ats.internal.jdbc.ConnectionImple.checkTransaction(ConnectionImple.java:1041)
> com.arjuna.ats.internal.jdbc.ConnectionImple.createStatement(ConnectionImple.java:153)
> jdk.internal.reflect.GeneratedMethodAccessor44.invoke(Unknown Source)
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> java.base/java.lang.reflect.Method.invoke(Method.java:564)
> org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
> org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
> org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75)
> org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
> org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:152)
> org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
> org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:40)
> org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
> org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75)
> org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
> org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81)
> com.sun.proxy.$Proxy33.createStatement(Unknown Source)
> org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.writeToTheDatabase(TestExecutor.java:159)
> org.jboss.narayana.tomcat.jta.integration.app.TestExecutor.verifyRecovery(TestExecutor.java:106)
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> java.base/java.lang.reflect.Method.invoke(Method.java:564)
> org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:139)
> org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)
> org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)
> org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:402)
> org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:209)
> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221)
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
> {noformat}
> One can play with the context.xml in the test.war and tweak the configuration.
> h3. Call to action
> Could you take a look at it and either help us configure the context.xml inside [^test.war] or contribute a fix for the Narayana Tomcat integration so as it could properly handle [Tomcat JDBC|https://github.com/apache/tomcat/tree/TOMCAT_9_0_4/modules/jdbc-pool...
> I would kindly ask you [to use my fork for the time being|https://github.com/Karm/narayana/tree/narayana-tomcat-ts/tomcat] so as we can quickly iterate.
> Thanks :)
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (JBTM-3003) standalone-xts.xml is not found in WS-AT performance tests
by Ondra Chaloupka (JIRA)
[ https://issues.jboss.org/browse/JBTM-3003?page=com.atlassian.jira.plugin.... ]
Ondra Chaloupka updated JBTM-3003:
----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
fixed several things at the end
* downloading from wfly ci not jboss ci (as not available anymore?)
* needed to use newer arquillian to work with wfly 12+
* that caused troubles of defined ports ({{port}} in {{arquillian.xml}} is not available anymore) and more changes in tests were needed (port offsetting in genereal)
> standalone-xts.xml is not found in WS-AT performance tests
> ----------------------------------------------------------
>
> Key: JBTM-3003
> URL: https://issues.jboss.org/browse/JBTM-3003
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: Performance Testing, XTS
> Reporter: Tom Jenkinson
> Assignee: Ondra Chaloupka
>
> [INFO] ------------------------------------------------------------------------
> [INFO] Building ws-at 1.0-SNAPSHOT
> [INFO] ------------------------------------------------------------------------
> [INFO]
> [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ ws-at ---
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ws-at ---
> [INFO] Using 'UTF-8' encoding to copy filtered resources.
> [INFO] skip non existing resourceDirectory /home/hudson/workspace/narayana-performance/comparison/ws-at/src/main/resources
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ ws-at ---
> [INFO] Changes detected - recompiling the module!
> [INFO] Compiling 8 source files to /home/hudson/workspace/narayana-performance/comparison/ws-at/target/classes
> [INFO]
> [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ws-at ---
> [INFO] Using 'UTF-8' encoding to copy filtered resources.
> [INFO] Copying 2 resources
> [INFO]
> [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ ws-at ---
> [INFO] Changes detected - recompiling the module!
> [INFO] Compiling 1 source file to /home/hudson/workspace/narayana-performance/comparison/ws-at/target/test-classes
> [INFO]
> [INFO] --- maven-antrun-plugin:1.7:run (default) @ ws-at ---
> [INFO] Executing tasks
> main:
> [copy] Copying 12826 files to /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server1
> [copy] Copied 4874 empty directories to 143 empty directories under /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server1
> [copy] Copying 25652 files to /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server2
> [copy] Copied 9748 empty directories to 286 empty directories under /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server2
> [copy] Copying 51304 files to /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server3
> [copy] Copied 19496 empty directories to 572 empty directories under /home/hudson/workspace/narayana-performance/comparison/ws-at/target/server3
> [INFO] ------------------------------------------------------------------------
> [INFO] Reactor Summary:
> [INFO]
> [INFO] comparison-parent .................................. SUCCESS [ 0.189 s]
> [INFO] common ............................................. SUCCESS [ 1.305 s]
> [INFO] ws-at .............................................. FAILURE [ 30.599 s]
> [INFO] rest-at ............................................ SKIPPED
> [INFO] jts ................................................ SKIPPED
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 32.244 s
> [INFO] Finished at: 2018-03-25T00:07:53+00:00
> [INFO] Final Memory: 62M/680M
> [INFO] ------------------------------------------------------------------------
> [ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (default) on project ws-at: An Ant BuildException has occured: Warning: Could not find file /home/hudson/workspace/narayana-performance/docs/examples/configs/standalone-xts.xml to copy.
> [ERROR] around Ant part ...<copy file="/home/hudson/workspace/narayana-performance//docs/examples/configs/standalone-xts.xml" tofile="/home/hudson/workspace/narayana-performance/comparison/ws-at/target/server1/standalone/configuration/standalone-xts.xml"/>... @ 13:232 in /home/hudson/workspace/narayana-performance/comparison/ws-at/target/antrun/build-main.xml
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months