[JBoss JIRA] (WFLY-12317) Using JTA transaction's node_name attribute is set to an old value after node-identifier is changed
by Ondrej Chaloupka (Jira)
[ https://issues.jboss.org/browse/WFLY-12317?page=com.atlassian.jira.plugin... ]
Ondrej Chaloupka commented on WFLY-12317:
-----------------------------------------
Summation of effort on this issue.
* The cause of the issue is described in the Mike's comment above (https://issues.jboss.org/browse/WFLY-12317?focusedCommentId=13763985#comm...).
* Even the test worked before with {{:reload}} it was not correct and the correct behaviour needed (even in WFLY16) restart. The counterexample is - start WFLY with node-id {{1}}. Fill the object store with some transaction data (orphan detection needs to be triggered). Wait a 2 minutes for recovery to start. Try to change the node-id to {{2}} with cli operation and reload. Even the model and jboss cli shows the node-id is {{2}} Narayana still effectivelly uses the node-ide with value {{1}}. To fix this restart of the JVM is needed.
* Question is what is the right fix. There is a discussion at the forum https://developer.jboss.org/thread/280430 what is the right fix. I personally inclined to permit to change the node-id just with reload (the fix would be then like this https://github.com/ochaloup/wildfly/commit/c39536f621dd3be38fdc605cd3b884...). The other option is to enforce JVM reload (the fix would be then like this https://github.com/ochaloup/wildfly/commit/42d098a41e1f9e9854d080491849aa...).
So, for the test this means that it's wrongly written for WFLY16. It's not the problem of the test as it follows the attribute description in the model. But as the model description presents a wrong flag (reload requires instead of necessary restart requires) it's the issue of the model that the flag was set wrongly. Nevertheless in the fix for this issue can allow only the reload.
> Using JTA transaction's node_name attribute is set to an old value after node-identifier is changed
> ---------------------------------------------------------------------------------------------------
>
> Key: WFLY-12317
> URL: https://issues.jboss.org/browse/WFLY-12317
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Affects Versions: 17.0.0.Final
> Reporter: Ivan Straka
> Assignee: Michael Musgrove
> Priority: Critical
> Attachments: server1_TxDifferentNodeCrashRecoveryTestCase_prepareHalt_jta_server.log, server2_TxDifferentNodeCrashRecoveryTestCase_prepareHalt_jta_server.log
>
>
> We have following test scenario (3 servers) that fails:
> # node-identifier of server1, 2 & 3 is set to 'vkcd', 'FdOu' and 'GocW' (ts.jbosstsX.node.identifier property)
> # server2 is started, node-identifier is set to txdifferentnodeid and server2 is stopped
> # server1 is started, node-identifier is set to txdifferentnodeid and server1 is reloaded
> # server3 is running
> # client call an EJB bean (where a transaction is started) on the server1
> # the EJB sends JMS message to the server3 (broker)
> # the EJB enlists dummy xa resource
> # during 2PC the Server1 is halted when prepare on dummy xa resource is invoked
> # we move server1 object store directory to the server2
> # server2 is started
> # the server2 is expected to rollback whole transaction
> Transaction is unfinished because server2 has not performed rollback.
> {code:java}
> prepareHalt(org.jboss.as.test.jbossts.crashrec.differentnode.test.TxDifferentNodeCrashRecoveryTestCase) Time elapsed: 810.354 sec <<< FAILURE!
> java.lang.AssertionError: Some unfinished xids on messaging server - expected 0 but was 1
> at org.junit.Assert.fail(Assert.java:88)
> at org.jboss.as.test.jbossts.crashrec.differentnode.test.TxDifferentNodeCrashRecoveryTestCase.checkAfterTestExecution(TxDifferentNodeCrashRecoveryTestCase.java:792)
> at org.jboss.as.test.jbossts.crashrec.differentnode.test.TxDifferentNodeCrashRecoveryTestCase.prepareHalt(TxDifferentNodeCrashRecoveryTestCase.java:565)
> {code}
> In the beginning servers' node-identifier are set to some value (lets say A,B,C). Before test execution node-identifier of server1 and server2 is set to the same value, let's say X.
> I see in logs that the transaction's node_name is set to the old value (vkcd vs txdifferentnodeid in the example below) on server1. Thus the server2 has not performed rollback.
> See node_name
> Server1:
> {code:java}
> 2019-07-22 17:40:54,616 DEBUG [com.arjuna.ats.jta] (MSC service thread 1-5) Setting up node identifiers '[txdifferentnodeid]' for which recovery will be performed
> {code}
> {code:java}
> 2019-07-22 17:41:11,931 TRACE [com.arjuna.ats.jta] (default task-2) XAResourceRecord.XAResourceRecord ( < formatId=131077, gtrid_length=32, bqual_length=36, tx_uid=0:ffff0a2804ed:26165251:5d35d902:3c, node_name=vkcd, branch_uid=0:ffff0a2804ed:26165251:5d35d902:46, subordinatenodename=null, eis_name=java:/JmsXA NodeId:05b492ae-ac97-11e9-a446-2016b912eaa8 >, XAResourceWrapperImpl@4158c7ec[xaResource=org.jboss.activemq.artemis.wildfly.integration.WildFlyActiveMQXAResourceWrapper(a)4a21a45f pad=false overrideRmValue=null productName=ActiveMQ Artemis productVersion=2.0 jndiName=java:/JmsXA NodeId:05b492ae-ac97-11e9-a446-2016b912eaa8] ), record id=0:ffff0a2804ed:26165251:5d35d902:47
> {code}
> Server2:
>
> {code:java}
> 2019-07-22 17:41:15,397 DEBUG [com.arjuna.ats.jta] (MSC service thread 1-3) Setting up node identifiers '[txdifferentnodeid]' for which recovery will be performed
> {code}
> {code:java}
> 2019-07-22 17:43:56,062 DEBUG [com.arjuna.ats.jta] (Periodic Recovery) node name of < formatId=131077, gtrid_length=32, bqual_length=36, tx_uid=0:ffff0a2804ed:26165251:5d35d902:3c, node_name=vkcd, branch_uid=0:ffff0a2804ed:26165251:5d35d902:46, subordinatenodename=null, eis_name=forgot eis name for: 1 > is vkcd
> 2019-07-22 17:43:56,062 DEBUG [com.arjuna.ats.jta] (Periodic Recovery) XAResourceOrphanFilter com.arjuna.ats.internal.jta.recovery.arjunacore.JTANodeNameXAResourceOrphanFilter voted ABSTAIN
> {code}
> *When does the scenario pass*
> When I run the TS with
> {code:java}
> -Dts.jbossts1.node.identifier=txdifferentnodeid -Dts.jbossts2.node.identifier=txdifferentnodeid
> {code}
> the test passes (old and new node-identifier on both servers are same)
> When step 3 slightly differs:
> When restart is performed instead of reload op.
> Server1 is reloaded. If it is restarted, node name is set correctly to txdifferentnodeid
> *tldr;*
> The problem is that server1 set TX node name to old value after node identifier is changed and server is reloaded. If the server is restarted, everything is OK.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (DROOLS-4102) Persist/reload Test Scenario table width/height
by Klara Kufova (Jira)
[ https://issues.jboss.org/browse/DROOLS-4102?page=com.atlassian.jira.plugi... ]
Klara Kufova updated DROOLS-4102:
---------------------------------
Attachment: screencast-01-08-19-1.webm
> Persist/reload Test Scenario table width/height
> -----------------------------------------------
>
> Key: DROOLS-4102
> URL: https://issues.jboss.org/browse/DROOLS-4102
> Project: Drools
> Issue Type: Enhancement
> Components: Scenario Simulation and Testing
> Reporter: Daniele Zonca
> Assignee: Yeser Amer
> Priority: Major
> Labels: ScenarioSimulation
> Attachments: screencast-01-08-19-1.webm
>
>
> Implement a mechanism to store/restore column width ({{FactMapping}}) and row height ({{Scenario}}) for the table in Test Scenario.
> Please consider:
> - Create/save a simulation (default column width/row height in scesim)
> - Rename a simulation (it perform a save/reload)
> - Change column type (recreate the column)
> - Duplicate column (preserve same size)
> - -Duplicate row (preserve same size)-
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (DROOLS-4386) Wrong matched rules set were fired when one of the condition having empty cell in drools 6.5.0 using Jdk 1.8
by Rahul Ramachar (Jira)
[ https://issues.jboss.org/browse/DROOLS-4386?page=com.atlassian.jira.plugi... ]
Rahul Ramachar commented on DROOLS-4386:
----------------------------------------
I have attached the Decision table whichis having empty cell.
> Wrong matched rules set were fired when one of the condition having empty cell in drools 6.5.0 using Jdk 1.8
> ------------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-4386
> URL: https://issues.jboss.org/browse/DROOLS-4386
> Project: Drools
> Issue Type: Bug
> Components: decision tables
> Affects Versions: 6.5.0.Final
> Environment: Windows, Java 1.8 and drools 6.5.0.Final
> Reporter: Rahul Ramachar
> Assignee: Mario Fusco
> Priority: Major
> Attachments: Discount.xls
>
>
> In JDK 1.7 we were using Drools 5.3.0.Final version and we are migrating to jdk 1.8 so drools 5.3.0.Final was not supported in which we were using Package Builder.
> We migrated JDK 1.8 with drools 6.5.0.Final which uses Kie API to implement rules
> Below is the decision table I am using:
> Customer Rule:
> Condition Condition Action
> ---------------------------------------------------
> Rule NO. Type Years Discount
> ---------------------------------------------------
> 1 "Individual" 5 15
> 2 "Individual" 3 10
> 3 "Individual" 20
> if I insert customer object as "Type" = Individual and "Years" = 5
> after fireAllRules
> It fires two rules i.e Rule no. 1 and 3 and gives the 3rd Rule number as result instead of Rule number 1, inturn gives Discount as 20 instead of 15 which is wrong result.
> if I insert customer object as "Type" = Individual and "Years" = 3
> after fireAllRules
> It fires two rules i.e Rule no. 2 and 3 and gives the 3rd rule number as result instead of Rule number 2, inturn gives Discount as 20 instead of 10 which is wrong result.
> Exact rule match is not happening and providing wrong results.
> Could you please give the solution for this it is breaking so many rules in the application.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (DROOLS-4386) Wrong matched rules set were fired when one of the condition having empty cell in drools 6.5.0 using Jdk 1.8
by Rahul Ramachar (Jira)
[ https://issues.jboss.org/browse/DROOLS-4386?page=com.atlassian.jira.plugi... ]
Rahul Ramachar updated DROOLS-4386:
-----------------------------------
Attachment: Discount.xls
> Wrong matched rules set were fired when one of the condition having empty cell in drools 6.5.0 using Jdk 1.8
> ------------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-4386
> URL: https://issues.jboss.org/browse/DROOLS-4386
> Project: Drools
> Issue Type: Bug
> Components: decision tables
> Affects Versions: 6.5.0.Final
> Environment: Windows, Java 1.8 and drools 6.5.0.Final
> Reporter: Rahul Ramachar
> Assignee: Mario Fusco
> Priority: Major
> Attachments: Discount.xls
>
>
> In JDK 1.7 we were using Drools 5.3.0.Final version and we are migrating to jdk 1.8 so drools 5.3.0.Final was not supported in which we were using Package Builder.
> We migrated JDK 1.8 with drools 6.5.0.Final which uses Kie API to implement rules
> Below is the decision table I am using:
> Customer Rule:
> Condition Condition Action
> ---------------------------------------------------
> Rule NO. Type Years Discount
> ---------------------------------------------------
> 1 "Individual" 5 15
> 2 "Individual" 3 10
> 3 "Individual" 20
> if I insert customer object as "Type" = Individual and "Years" = 5
> after fireAllRules
> It fires two rules i.e Rule no. 1 and 3 and gives the 3rd Rule number as result instead of Rule number 1, inturn gives Discount as 20 instead of 15 which is wrong result.
> if I insert customer object as "Type" = Individual and "Years" = 3
> after fireAllRules
> It fires two rules i.e Rule no. 2 and 3 and gives the 3rd rule number as result instead of Rule number 2, inturn gives Discount as 20 instead of 10 which is wrong result.
> Exact rule match is not happening and providing wrong results.
> Could you please give the solution for this it is breaking so many rules in the application.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (DROOLS-4321) [DMN Designer] Search feature - DMN Data Types must be searchable elements
by Jozef Marko (Jira)
[ https://issues.jboss.org/browse/DROOLS-4321?page=com.atlassian.jira.plugi... ]
Jozef Marko updated DROOLS-4321:
--------------------------------
Description:
Currently, the search component indexes only GDT cells, DRG elements, and Boxed Expressions. It must index Data Types too.
h3. Acceptance test
On both Firefox and Chrome
- Search when data types collapsed
- Search in nested structures, Structure in Structure
- Search _Constraints_
- Search _Is List_
- Search data type, edit it, save, continue search
- Search data type, remove it
- Search data type, matches that needs scrolling
- Search Data Type, Search Model, Search Data Type
was:Currently, the search component indexes only GDT cells, DRG elements, and Boxed Expressions. It must index Data Types too.
> [DMN Designer] Search feature - DMN Data Types must be searchable elements
> ---------------------------------------------------------------------------
>
> Key: DROOLS-4321
> URL: https://issues.jboss.org/browse/DROOLS-4321
> Project: Drools
> Issue Type: Task
> Components: DMN Editor
> Reporter: Guilherme Gomes
> Assignee: Guilherme Gomes
> Priority: Major
> Labels: drools-tools
>
> Currently, the search component indexes only GDT cells, DRG elements, and Boxed Expressions. It must index Data Types too.
> h3. Acceptance test
> On both Firefox and Chrome
> - Search when data types collapsed
> - Search in nested structures, Structure in Structure
> - Search _Constraints_
> - Search _Is List_
> - Search data type, edit it, save, continue search
> - Search data type, remove it
> - Search data type, matches that needs scrolling
> - Search Data Type, Search Model, Search Data Type
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (WFLY-12344) SecurityManager push/pull is expensive also for datasources
by Stefano Maestri (Jira)
Stefano Maestri created WFLY-12344:
--------------------------------------
Summary: SecurityManager push/pull is expensive also for datasources
Key: WFLY-12344
URL: https://issues.jboss.org/browse/WFLY-12344
Project: WildFly
Issue Type: Enhancement
Components: JCA
Affects Versions: 17.0.1.Final
Reporter: Stefano Maestri
Assignee: Stefano Maestri
Fix For: 18.0.0.Beta1
Pushing SecurityDefinition in securityManager in eery SubjectFactory is creating a lot of object with an impact on performance.
Double checking WFLY-6372 it seems not needed for that issue.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months
[JBoss JIRA] (WFCORE-4589) WFCORE-4507 Upgrade Jackson to 2.9.9.1
by Martin Stefanko (Jira)
Martin Stefanko created WFCORE-4589:
---------------------------------------
Summary: WFCORE-4507 Upgrade Jackson to 2.9.9.1
Key: WFCORE-4589
URL: https://issues.jboss.org/browse/WFCORE-4589
Project: WildFly Core
Issue Type: Component Upgrade
Components: Security
Reporter: Martin Stefanko
Assignee: Darran Lofthouse
Fix For: 9.0.1.Final
Upgrade the Jackson version to 2.9.9 as used for Elytron subsystem testing to match the version in WildFly.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
5 years, 4 months