[
https://issues.jboss.org/browse/WFLY-10392?page=com.atlassian.jira.plugin...
]
Francesco Nigro edited comment on WFLY-10392 at 5/19/18 6:11 AM:
-----------------------------------------------------------------
[~eduda] [~jmesnil] I have manually checked the SQL statements related to Oracle before
and after the introduction of the property based configuration:
!image-2018-05-19-10-26-05-662.png|thumbnail!
I can't spot meaningful differences TBH, [~jmesnil] wdyt?
So, given that:
* the SQL doesn't seem to have been changed
* I have reverted any bits of JDBC HA that could impact the original behaviour (on tables
creation and specific SQL statements)
There are very few options left:
# the issue could be related to any other remaining commits that seems unrelated
# the env where the tests are running has something wrong
I'm checking if there is anything related to the former, would be great to do the same
for the latter.
I have spotted an important difference from 2.x master on Oracle SQL statements:
1.5.5-x:
{code:sql}
create-journal-table.oracle=CREATE TABLE %s(id NUMBER(19) GENERATED BY DEFAULT ON NULL AS
IDENTITY,recordType NUMBER(5),compactCount NUMBER(5),txId NUMBER(19),userRecordType
NUMBER(5),variableSize NUMBER(10),record BLOB,txDataSize NUMBER(10),txData
BLOB,txCheckNoRecords NUMBER(10),seq NUMBER(19))
{code}
upstream 2.x:
{code:sql}
create-journal-table.oracle=CREATE TABLE %s(id NUMBER(19),recordType
NUMBER(5),compactCount NUMBER(5),txId NUMBER(19),userRecordType NUMBER(5),variableSize
NUMBER(10),record BLOB,txDataSize NUMBER(10),txData BLOB,txCheckNoRecords NUMBER(10),seq
NUMBER(19))
{code}
This change was introduced by [ARTEMIS-1660 create-journal-table.oracle does create
identity for column
id|https://github.com/apache/activemq-artemis/commit/722ef6aa6c09eaf344d5...]
and it is not ported on the JDBC HA commits yet: I will manually porting it to check if it
will solve the regression.
was (Author: fnigro):
[~eduda] [~jmesnil] I have manually checked the SQL statements related to Oracle before
and after the introduction of the property based configuration:
!image-2018-05-19-10-26-05-662.png|thumbnail!
I can't spot meaningful differences TBH, [~jmesnil] wdyt?
So, given that:
* the SQL doesn't seem to have been changed
* I have reverted any bits of JDBC HA that could impact the original behaviour (on tables
creation and specific SQL statements)
There are very few options left:
# the issue could be related to any other remaining commits that seems unrelated
# the env where the tests are running has something wrong
I'm checking if there is anything related to the former, would be great to do the same
for the latter.
I have spotted an important difference from 2.x master on Oracle SQL statements:
1.5.5-x:
{code:sql}
create-journal-table.oracle=CREATE TABLE %s(id NUMBER(19) GENERATED BY DEFAULT ON NULL AS
IDENTITY,recordType NUMBER(5),compactCount NUMBER(5),txId NUMBER(19),userRecordType
NUMBER(5),variableSize NUMBER(10),record BLOB,txDataSize NUMBER(10),txData
BLOB,txCheckNoRecords NUMBER(10),seq NUMBER(19))
{code}
upstream 2.x:
{code:sql}
create-journal-table.oracle=CREATE TABLE %s(id NUMBER(19),recordType
NUMBER(5),compactCount NUMBER(5),txId NUMBER(19),userRecordType NUMBER(5),variableSize
NUMBER(10),record BLOB,txDataSize NUMBER(10),txData BLOB,txCheckNoRecords NUMBER(10),seq
NUMBER(19))
{code}
This change was introduced by [ARTEMIS-1660 create-journal-table.oracle does create
identity for column
id|https://github.com/apache/activemq-artemis/commit/722ef6aa6c09eaf344d5...]
and it is not ported on the JDBC HA commits yet: I will manually porting it to check if it
is the cause of the regression.
Regression in Remote JCA scenario with JDBC store after Artemis
upgrade
-----------------------------------------------------------------------
Key: WFLY-10392
URL:
https://issues.jboss.org/browse/WFLY-10392
Project: WildFly
Issue Type: Bug
Components: JMS
Reporter: Erich Duda
Assignee: Jeff Mesnil
Priority: Critical
Attachments: image-2018-05-19-10-26-05-662.png, sql-diff.png
After Artemis upgrade to 1.5.5.jbossorg-011 (WFLY-10139) I can see a regression in Remote
JCA test case when JDBC persistent store is used. This issue is not present if Artemis
file based journal is used.
When I removed commits related to JDBC HA from Artemis upgrade, the test passed with both
JDBC and file based store.
*Remote JCA scenario:*
* There are 4 Wildfly servers
* Servers 1 and 3 are used as messaging brokers - they are called JMS servers
* Servers 2 and 4 have MDBs and RA configured to connect to JMS servers. These servers
are called MDB servers.
* External standalone producer sends messages to server 1 to InQueue
* MDBs on MBD severs receive messages from InQueue and send them to OutQueue
* External standalone receiver receives messages from server 3 from OutQueue
* During this scenario server 1 is several times killed and restarted.
*Expectation:* All messages sent by the standalone producer are received by the
standalone receiver. There are no lost or duplicated messages.
*Reality:* After some kills of server 1, message flow coming from the standalone producer
is broken and the receiver does not receive any messages in specified timeout.
*Critical* priority was chosen because the regression has been detected only in this
particular test case so far. We ran only nightly testing scope. After that we run full
testing, we will know more about impact of this issue.
*Technical details:*
At some point following log messages start to occur in the test log. It seems that they
are related to malfunction of communication among Artemis brokers what causes that message
flow is broken.
{code}
21:55:51,724 WARN [org.apache.activemq.artemis.core.server] (Thread-1
(ActiveMQ-client-global-threads)) AMQ222139: MessageFlowRecordImpl
[nodeID=e53da514-5953-11e8-910a-fa163e48a89a, connector=TransportConfigur
ation(name=connector,
factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory)
?httpUpgradeEndpoint=acceptor&activemqServerName=default&httpUpgradeEnabled=true&port=10080&host=rhel7-la
rge-58597, queueName=sf.my-cluster.e53da514-5953-11e8-910a-fa163e48a89a,
queue=QueueImpl[name=sf.my-cluster.e53da514-5953-11e8-910a-fa163e48a89a,
postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=
d80bf5bd-5953-11e8-ac10-fa163e48a89a]]@756a727a, isClosed=false, reset=true]::Remote
queue binding jms.queue.DLQe53da514-5953-11e8-910a-fa163e48a89a has already been bound in
the post office. Most likely cause f
or this is you have a loop in your cluster due to cluster max-hops being too large or you
have multiple cluster connections to the same nodes using overlapping addresses
{code}
{code}
21:55:53,078 ERROR [org.apache.activemq.artemis.core.server] (Thread-6
(ActiveMQ-client-global-threads)) AMQ224037: cluster connection Failed to handle message:
java.lang.IllegalStateException: Cannot find binding for
jms.queue.InQueuee53da514-5953-11e8-910a-fa163e48a89a on
ClusterConnectionImpl@14989488[nodeUUID=d80bf5bd-5953-11e8-ac10-fa163e48a89a,
connector=TransportConfiguration(name=connector,
factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory)
?httpUpgradeEndpoint=acceptor&activemqServerName=default&httpUpgradeEnabled=true&port=8080&host=rhel7-large-58597,
address=jms, server=ActiveMQServerImpl::serverUUID=d80bf5bd-5953-11e8-ac10-fa163e48a89a]
at
org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.doConsumerCreated(ClusterConnectionImpl.java:1294)
[artemis-server-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.handleNotificationMessage(ClusterConnectionImpl.java:1029)
[artemis-server-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.onMessage(ClusterConnectionImpl.java:1004)
[artemis-server-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1001)
[artemis-core-client-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl.access$400(ClientConsumerImpl.java:49)
[artemis-core-client-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1124)
[artemis-core-client-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:122)
[artemis-commons-1.5.5.jbossorg-011.jar:1.5.5.jbossorg-011]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[rt.jar:1.8.0_171]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[rt.jar:1.8.0_171]
at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_171]
{code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)