[JBoss JIRA] Created: (JGRP-457) Optimization: make threads return immediately if NAKACK has another active thread for the same sender
by Bela Ban (JIRA)
Optimization: make threads return immediately if NAKACK has another active thread for the same sender
-----------------------------------------------------------------------------------------------------
Key: JGRP-457
URL: http://jira.jboss.com/jira/browse/JGRP-457
Project: JGroups
Issue Type: Feature Request
Reporter: Bela Ban
Assigned To: Bela Ban
Priority: Minor
Fix For: 2.5
In NAKACK, when a thread places a message for sender S into the NakReceiverWindow NRW, it subsequently acquires a lock on NRW (lock by sender) and removes as many messages as possible and passes them up.
If many threads do this at the same time, all threads but one are blocked, and - when finally unblocked - usually return. This causes context switches and possibly cache flushing, so a better way would be to have the threads check whether another thread is already removing messages using a CAS operation *before* acquiring the lock.
The effect should be that no threads will wait on the lock unnecessarily, and thus fewer context switches, and more threads available to the pool.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
2 months
[JBoss JIRA] (WFLY-5614) org.hibernate:4.3 should not be alias for 5.0
by Scott Marlow (JIRA)
[ https://issues.jboss.org/browse/WFLY-5614?page=com.atlassian.jira.plugin.... ]
Scott Marlow closed WFLY-5614.
------------------------------
Resolution: Done
> org.hibernate:4.3 should not be alias for 5.0
> ---------------------------------------------
>
> Key: WFLY-5614
> URL: https://issues.jboss.org/browse/WFLY-5614
> Project: WildFly
> Issue Type: Feature Request
> Components: JPA / Hibernate
> Affects Versions: 10.0.0.CR4
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Fix For: 10.0.0.Final
>
>
> modules/system/layers/base/org/hibernate/4.3/module.xml contains:
> {quote}
> <module-alias xmlns="urn:jboss:module:1.3" name="org.hibernate" slot="4.3" target-name="org.hibernate"/>
> {quote}
> org.hibernate:4.3 should be a real module (not alias) like org.hibernate:4.1 is.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 1 month
[JBoss JIRA] (WFLY-5614) org.hibernate:4.3 should not be alias for 5.0
by Scott Marlow (JIRA)
[ https://issues.jboss.org/browse/WFLY-5614?page=com.atlassian.jira.plugin.... ]
Scott Marlow updated WFLY-5614:
-------------------------------
Fix Version/s: 10.0.0.Final
> org.hibernate:4.3 should not be alias for 5.0
> ---------------------------------------------
>
> Key: WFLY-5614
> URL: https://issues.jboss.org/browse/WFLY-5614
> Project: WildFly
> Issue Type: Feature Request
> Components: JPA / Hibernate
> Affects Versions: 10.0.0.CR4
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Fix For: 10.0.0.Final
>
>
> modules/system/layers/base/org/hibernate/4.3/module.xml contains:
> {quote}
> <module-alias xmlns="urn:jboss:module:1.3" name="org.hibernate" slot="4.3" target-name="org.hibernate"/>
> {quote}
> org.hibernate:4.3 should be a real module (not alias) like org.hibernate:4.1 is.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 1 month
[JBoss JIRA] (WFLY-5501) JDBC Object Store problem with Mariadb55
by Tom Jenkinson (JIRA)
[ https://issues.jboss.org/browse/WFLY-5501?page=com.atlassian.jira.plugin.... ]
Tom Jenkinson resolved WFLY-5501.
---------------------------------
Resolution: Done
> JDBC Object Store problem with Mariadb55
> ----------------------------------------
>
> Key: WFLY-5501
> URL: https://issues.jboss.org/browse/WFLY-5501
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Reporter: Hayk Hovsepyan
> Assignee: Tom Jenkinson
> Priority: Blocker
> Fix For: 10.0.0.Final
>
> Attachments: mariadb_jar.zip, server.log, standalone.xml
>
>
> When configuring transactions to use Mariadb55 Datasource as a JDBC Object store, server fails to start with error:
> {code}
> 13:56:51,485 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("subsystem" => "transactions")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.txn.ArjunaRecoveryManager" => "org.jboss.msc.service.StartException in service jboss.txn.ArjunaRecoveryManager: WFLYTX0005: Recovery manager create failed
> Caused by: java.lang.NullPointerException"}}
> {code}
> Steps to reproduce:
> 1. Create Mariadb55 JDBC driver module. Module archived directory is attached.
> 2. Add driver into configuration xml.
> 3. Create Datasource pointing to Mariadb55 database and using driver configured a a module.
> 4. Configure transactions to use jdbc-store the added Datasource. standalone.xml is attached.
> 5. Server fails to start. server.log is attached.
> config xml file part:
> {code}
> <subsystem xmlns="urn:jboss:domain:datasources:4.0">
> <datasources>
> <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
> <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
> <driver>h2</driver>
> <security>
> <user-name>sa</user-name>
> <password>sa</password>
> </security>
> </datasource>
> <datasource jta="false" jndi-name="java:jboss/datasources/jdbc-store" pool-name="JDBCObjectStore" enabled="true" use-java-context="true">
> <connection-url>jdbc:mariadb://db22.mw.lab.eng.bos.redhat.com:3306/dballo17</connection-url>
> <driver>module_mariadb.jar</driver>
> <security>
> <user-name>dballo17</user-name>
> <password>dballo17</password>
> </security>
> </datasource>
> <drivers>
> <driver name="h2" module="com.h2database.h2">
> <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
> </driver>
> <driver name="module_mariadb.jar" module="mariadb_jar"/>
> </drivers>
> </datasources>
> </subsystem>
> <subsystem xmlns="urn:jboss:domain:transactions:3.0">
> <core-environment>
> <process-id>
> <uuid/>
> </process-id>
> </core-environment>
> <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
> <coordinator-environment enable-tsm-status="true"/>
> <jdbc-store datasource-jndi-name="java:jboss/datasources/jdbc-store"/>
> </subsystem>
> {code}
> Attached necessary info:
> 1. server.log
> 2. Module zip to extract in $JBOSS_HOME/modules/system/layers/base
> 3. standalone.xml
> Notes:
> The same steps works for other databases.
> When step 4. is not executed server starts successfully, so module is recognized.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 1 month
[JBoss JIRA] (WFLY-5571) Intermittent failure in ModelPersistenceTestCase.testSimpleOperation
by James Perkins (JIRA)
[ https://issues.jboss.org/browse/WFLY-5571?page=com.atlassian.jira.plugin.... ]
James Perkins reopened WFLY-5571:
---------------------------------
This doesn't seem to be solved, http://brontes.lab.eng.brq.redhat.com/viewLog.html?buildId=77180&tab=buil.... It looks like the issue is that an output stream is left open somewhere. Windows is pretty picky with files being left open and moving/renaming them.
> Intermittent failure in ModelPersistenceTestCase.testSimpleOperation
> --------------------------------------------------------------------
>
> Key: WFLY-5571
> URL: https://issues.jboss.org/browse/WFLY-5571
> Project: WildFly
> Issue Type: Bug
> Components: Domain Management
> Affects Versions: 10.0.0.CR3
> Reporter: Brian Stansberry
> Assignee: Tomaz Cerar
> Fix For: 10.0.0.Final
>
>
> ModelPersistenceTestCase.testSimpleOperation occasionally fails with the following pattern:
> {code}
> java.lang.AssertionError: null
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertTrue(Assert.java:52)
> at org.jboss.as.test.integration.management.api.ModelPersistenceTestCase.testSimpleOperation(ModelPersistenceTestCase.java:119)
> ------- Stdout: -------
> 14:06:18,604 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 1) org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0081: Failed to back up C:\BuildAgent\work\a31d203e70e89f90\testsuite\integration\basic\target\jbossas\standalone\configuration\standalone.xml: org.jboss.as.controller.persistence.ConfigurationPersistenceException: WFLYCTL0081: Failed to back up C:\BuildAgent\work\a31d203e70e89f90\testsuite\integration\basic\target\jbossas\standalone\configuration\standalone.xml
> at org.jboss.as.controller.persistence.ConfigurationFile.fileWritten(ConfigurationFile.java:552)
> at org.jboss.as.controller.persistence.ConfigurationFilePersistenceResource.doCommit(ConfigurationFilePersistenceResource.java:65)
> at org.jboss.as.controller.persistence.AbstractFilePersistenceResource.commit(AbstractFilePersistenceResource.java:58)
> at org.jboss.as.controller.ModelControllerImpl$4.commit(ModelControllerImpl.java:780)
> at org.jboss.as.controller.AbstractOperationContext.executeDoneStage(AbstractOperationContext.java:743)
> at org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:680)
> at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:370)
> at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1336)
> at org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:391)
> at org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:217)
> at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.doExecute(ModelControllerClientOperationHandler.java:207)
> at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler.access$300(ModelControllerClientOperationHandler.java:129)
> at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:151)
> at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1$1.run(ModelControllerClientOperationHandler.java:147)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:92)
> at org.jboss.as.controller.remote.ModelControllerClientOperationHandler$ExecuteRequestHandler$1.execute(ModelControllerClientOperationHandler.java:147)
> at org.jboss.as.protocol.mgmt.AbstractMessageHandler$2$1.doExecute(AbstractMessageHandler.java:299)
> at org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:519)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> at org.jboss.threads.JBossThread.run(JBossThread.java:320)
> Caused by: java.nio.file.FileSystemException: C:\BuildAgent\work\a31d203e70e89f90\testsuite\integration\basic\target\jbossas\standalone\configuration\standalone_xml_history\standalone.last.xml: The process cannot access the file because it is being used by another process.
> at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
> at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
> at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
> at sun.nio.fs.WindowsFileCopy.copy(WindowsFileCopy.java:165)
> at sun.nio.fs.WindowsFileSystemProvider.copy(WindowsFileSystemProvider.java:278)
> at java.nio.file.Files.copy(Files.java:1274)
> at org.jboss.as.controller.persistence.FilePersistenceUtils.copyFile(FilePersistenceUtils.java:73)
> at org.jboss.as.controller.persistence.ConfigurationFile.fileWritten(ConfigurationFile.java:550)
> ... 23 more
> {code}
> The test fails because the standalone.last.xml file isn't being updated as expected; the file isn't updated due to the "The process cannot access the file because it is being used by another process" IOException.
> 3 generally possibilities come to mind:
> 1) There's some other process on the CI server that really is using the file. Something like antivirus that touches lots of files briefly. (Not suggesting its actually AV.) It's odd we don't get other failures though; e.g. failures to persist the main config file.
> 2) It's the test driver process that's holding the file, conflicting with the server process. This is certainly possible. I've looked though and the test driver seems to be correct in terms of how it handles the file, reading it to calculate a CRC and then closing the stream used to do that in a finally block. It's also odd that this would only happen on Windows CI. Still, since we know we have 2 processes, test driver and server, both touching a file and we are getting an exception about 2 processes conflicting over that file, something in this area seems most likely.
> 3) There's some flaw in ConfigurationFile itself. But it's odd that a flaw there would produce an exception talking about how the file "is being used by another process".
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 1 month