[JBoss JIRA] (WFLY-5858) Testsuite on windows sometimes fails with file locks on standalone-*.xml
by Jason Greene (JIRA)
[ https://issues.jboss.org/browse/WFLY-5858?page=com.atlassian.jira.plugin.... ]
Jason Greene updated WFLY-5858:
-------------------------------
Fix Version/s: 10.0.0.Final
(was: 10.0.0.CR5)
> Testsuite on windows sometimes fails with file locks on standalone-*.xml
> -------------------------------------------------------------------------
>
> Key: WFLY-5858
> URL: https://issues.jboss.org/browse/WFLY-5858
> Project: WildFly
> Issue Type: Bug
> Components: Domain Management
> Affects Versions: 10.0.0.CR3
> Reporter: Tomaz Cerar
> 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)
8 years, 5 months
[JBoss JIRA] (WFLY-5759) Local web-app.xsd can't be loaded to validate web.xml
by Jason Greene (JIRA)
[ https://issues.jboss.org/browse/WFLY-5759?page=com.atlassian.jira.plugin.... ]
Jason Greene updated WFLY-5759:
-------------------------------
Fix Version/s: 10.0.0.Final
(was: 10.0.0.CR5)
> Local web-app.xsd can't be loaded to validate web.xml
> ------------------------------------------------------
>
> Key: WFLY-5759
> URL: https://issues.jboss.org/browse/WFLY-5759
> Project: WildFly
> Issue Type: Bug
> Components: Web (Undertow)
> Affects Versions: 10.0.0.CR4
> Reporter: Jim Ma
> Assignee: Jim Ma
> Fix For: 10.0.0.Final
>
>
> When "org.jboss.metadata.parser.validate" is enabled , WebParsingDeploymentProcessor retrieves web-app.xsd from remote to validate web.xml instead of load it from local.
> {code:java}
> 2015-11-24 04:13:12,404 WARN [org.jboss.metadata.parser.util.XMLResourceResolver] (MSC service thread 1-4) Cannot load publicId from resource: web-app_2_5.xsd
> 2015-11-24 04:13:12,406 WARN [org.jboss.metadata.parser.util.XMLResourceResolver] (MSC service thread 1-3) Cannot load publicId from resource: web-app_2_5.xsd
> 2015-11-24 04:13:13,106 ERROR [org.jboss.metadata.parser.util.XMLSchemaValidator] (MSC service thread 1-3) Cannot get schema for location: http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd: org.xml.sax.SAXParseException; systemId: http://java.sun.com/xml/ns/javaee/javaee_5.xsd; lineNumber: 83; columnNumber: 38; sch-props-correct.2: A schema cannot contain two global components with the same name; this schema contains two occurrences of 'http://java.sun.com/xml/ns/javaee,descriptionGroup'.
> at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:201) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:132) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:394) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4093) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4088) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.checkForDuplicateNames(XSDHandler.java:3746) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.buildGlobalNameRegistries(XSDHandler.java:1315) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:610) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:580) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:547) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:513) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:233) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:638) [rt.jar:1.8.0_60]
> at _redirected.SchemaFactory.newSchema(_SchemaFactory.java:167) [jboss-modules.jar:1.4.4.Final]
> at org.jboss.metadata.parser.util.XMLSchemaValidator.getSchemaForLocation(XMLSchemaValidator.java:117)
> at org.jboss.metadata.parser.util.XMLSchemaValidator.validate(XMLSchemaValidator.java:85)
> at org.wildfly.extension.undertow.deployment.WebParsingDeploymentProcessor.deploy(WebParsingDeploymentProcessor.java:104)
> at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147) [wildfly-server-2.0.2.Final.jar:2.0.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) [jboss-msc-1.2.6.Final.jar:1.2.6.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) [jboss-msc-1.2.6.Final.jar:1.2.6.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_60]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_60]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_60]
> 2015-11-24 04:13:13,115 WARN [org.jboss.metadata.parser.util.XMLSchemaValidator] (MSC service thread 1-3) Cannot get schema for location: http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
> 2015-11-24 04:13:13,112 ERROR [org.jboss.metadata.parser.util.XMLSchemaValidator] (MSC service thread 1-4) Cannot get schema for location: http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd: org.xml.sax.SAXParseException; systemId: http://java.sun.com/xml/ns/javaee/javaee_5.xsd; lineNumber: 83; columnNumber: 38; sch-props-correct.2: A schema cannot contain two global components with the same name; this schema contains two occurrences of 'http://java.sun.com/xml/ns/javaee,descriptionGroup'.
> at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:201) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:132) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:394) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4093) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4088) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.checkForDuplicateNames(XSDHandler.java:3746) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.buildGlobalNameRegistries(XSDHandler.java:1315) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:610) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:580) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:547) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:513) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:233) [xercesImpl-2.11.0.SP4.jar:2.11.0.SP4]
> at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:638) [rt.jar:1.8.0_60]
> at _redirected.SchemaFactory.newSchema(_SchemaFactory.java:167) [jboss-modules.jar:1.4.4.Final]
> at org.jboss.metadata.parser.util.XMLSchemaValidator.getSchemaForLocation(XMLSchemaValidator.java:117)
> at org.jboss.metadata.parser.util.XMLSchemaValidator.validate(XMLSchemaValidator.java:85)
> at org.wildfly.extension.undertow.deployment.WebParsingDeploymentProcessor.deploy(WebParsingDeploymentProcessor.java:104)
> at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147) [wildfly-server-2.0.2.Final.jar:2.0.2.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) [jboss-msc-1.2.6.Final.jar:1.2.6.Final]
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) [jboss-msc-1.2.6.Final.jar:1.2.6.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_60]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_60]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_60]
> 2015-11-24 04:13:13,120 WARN [org.jboss.metadata.parser.util.XMLSchemaValidator] (MSC service thread 1-4) Cannot get schema for location: http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (WFLY-5716) Wrong handling of request context for remote EJB calls
by Jason Greene (JIRA)
[ https://issues.jboss.org/browse/WFLY-5716?page=com.atlassian.jira.plugin.... ]
Jason Greene updated WFLY-5716:
-------------------------------
Fix Version/s: 10.0.0.Final
(was: 10.0.0.CR5)
> Wrong handling of request context for remote EJB calls
> ------------------------------------------------------
>
> Key: WFLY-5716
> URL: https://issues.jboss.org/browse/WFLY-5716
> Project: WildFly
> Issue Type: Bug
> Components: CDI / Weld, EJB
> Affects Versions: 9.0.0.Final, 10.0.0.CR4
> Reporter: Ste Gr
> Assignee: Martin Kouba
> Fix For: 10.0.0.Final
>
> Attachments: wfly5716.zip
>
>
> Two applications deployed to Wildfly. The first one provides a singleton remote ejb which uses request scoped beans (in this case a RESOURCE_LOCAL entity manager manged by a CDI producer/disposer, but +all+ request scoped beans are affected). The second application uses that EJB to get some data only accessible by the first application.
> A request is made to the second app from a browser. The app will get the remote EJB and invokes two methods on it. The first method produces the entity manager, accesses the database and returns the result. The entity manager will be disposed again. The second method won't produce a new entity manager but tries to re-use the one from the previous invokation. This fails as the entity manager was disposed.
> If the same use-case is made using the first app everythings works as desired. But it doesn't look right (or the request context is joined because it is the same application). It produces the the entity manager on the first invocation and closes it as soon as the whole request made from the browser is completed. Thats why the second invokation has a valid entity manager to work with.
> I don't know the spec but:
> - either the first EJB invokation from second app to first app is not allowed to dispose the request context (all the request scoped beans)
> - or each invokation must get its own request context (entity manager must be produced and disposed again).
> I've made a [stackoverflow thread|http://stackoverflow.com/q/33826720/1741604] which shows some code examples.
> (JBoss AS 7.1.3.Final is also affected but it is not available in 'affected version/s')
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (WFLY-1272) Infinite loop when starting my ear in JBoss 7.2.0 with autodeploy
by ehsavoie Hugonnet (JIRA)
[ https://issues.jboss.org/browse/WFLY-1272?page=com.atlassian.jira.plugin.... ]
ehsavoie Hugonnet closed WFLY-1272.
-----------------------------------
Fix Version/s: 9.0.2.Final
Resolution: Out of Date
The issue was in the ear itself, it's working on WildFly now (at least for the next release) with some rework and configuration cleaning.
> Infinite loop when starting my ear in JBoss 7.2.0 with autodeploy
> -----------------------------------------------------------------
>
> Key: WFLY-1272
> URL: https://issues.jboss.org/browse/WFLY-1272
> Project: WildFly
> Issue Type: Bug
> Components: Server
> Reporter: ehsavoie Hugonnet
> Assignee: ehsavoie Hugonnet
> Fix For: 9.0.2.Final
>
>
> Hi,
> I have a quite complexe application which I'm trying to port form JBoss 6.1.0 to JBoss 7.2.0.
> The ear is exploded as well as the war it contains. I have activated the auto-deploy-exploded on the deployment scanner.
> I have no error messages only warnings but the startup goes into an infinite loop trying to deploy my application again and again.
> If I set the auto-deploy-exploded to false then I can deploy correctly.
> Maybe it is because my application takes some time to launch (having to load a bunch of data into cache on startup).
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (WFCORE-1201) Could not upload new deployment
by Jason Greene (JIRA)
[ https://issues.jboss.org/browse/WFCORE-1201?page=com.atlassian.jira.plugi... ]
Jason Greene updated WFCORE-1201:
---------------------------------
Fix Version/s: 2.0.6.Final
(was: 2.0.5.Final)
> Could not upload new deployment
> -------------------------------
>
> Key: WFCORE-1201
> URL: https://issues.jboss.org/browse/WFCORE-1201
> Project: WildFly Core
> Issue Type: Bug
> Components: Domain Management
> Affects Versions: 1.0.2.Final
> Environment: 2 different machines
> Linux Debian Squeeze & Jessie
> Oracle Java SE 8
> Reporter: Claudio Weiler
> Assignee: Harald Pehl
> Fix For: 2.0.6.Final
>
>
> WildFly stop to accept deployments via interface upload with following stacktrace:
> ERROR [io.undertow.request] (XNIO-1 task-2) Undertow request failed HttpServerExchange{ POST /management-upload}: java.io.IOException: UT000036: Connection terminated parsing multipart data
> at io.undertow.server.handlers.form.MultiPartParserDefinition$MultiPartUploadHandler.parseBlocking(MultiPartParserDefinition.java:203)
> at org.jboss.as.domain.http.server.DomainApiGenericOperationHandler.handleRequest(DomainApiGenericOperationHandler.java:104)
> at io.undertow.server.handlers.encoding.EncodingHandler.handleRequest(EncodingHandler.java:72)
> at org.jboss.as.domain.http.server.security.SubjectDoAsHandler$1.run(SubjectDoAsHandler.java:72)
> at org.jboss.as.domain.http.server.security.SubjectDoAsHandler$1.run(SubjectDoAsHandler.java:68)
> 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.domain.http.server.security.SubjectDoAsHandler.handleRequest(SubjectDoAsHandler.java:68)
> at org.jboss.as.domain.http.server.security.SubjectDoAsHandler.handleRequest(SubjectDoAsHandler.java:63)
> at io.undertow.server.handlers.BlockingHandler.handleRequest(BlockingHandler.java:56)
> at org.jboss.as.domain.http.server.DomainApiCheckHandler.handleRequest(DomainApiCheckHandler.java:87)
> at io.undertow.security.handlers.AuthenticationCallHandler.handleRequest(AuthenticationCallHandler.java:52)
> at io.undertow.server.Connectors.executeRootHandler(Connectors.java:199)
> at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:774)
> 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)
> Same artifact was used before with success, nothing changed.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (WFLY-5904) A deadlock can result if an EJB is being passivated at the same time an invocation made
by Stuart Douglas (JIRA)
Stuart Douglas created WFLY-5904:
------------------------------------
Summary: A deadlock can result if an EJB is being passivated at the same time an invocation made
Key: WFLY-5904
URL: https://issues.jboss.org/browse/WFLY-5904
Project: WildFly
Issue Type: Bug
Components: Clustering, EJB
Reporter: Stuart Douglas
Assignee: Paul Ferraro
As seen in EJBClientDescriptorTestCase.testClientInvocationTimeout
This can be reproduced locally by adding a loop around the final invocations in the test:
{code}
for (int i = 0; i < 1000; ++i) {
Assert.assertEquals("bar", remote1.getManagedBeanMessage());
Assert.assertEquals("bar", remote2.getManagedBeanMessage());
}
{code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (WFLY-5904) A deadlock can result if an EJB is being passivated at the same time an invocation made
by Stuart Douglas (JIRA)
[ https://issues.jboss.org/browse/WFLY-5904?page=com.atlassian.jira.plugin.... ]
Stuart Douglas updated WFLY-5904:
---------------------------------
Attachment: passivationTestFailureDump.txt
Attached stack dump when deadlock occurs
> A deadlock can result if an EJB is being passivated at the same time an invocation made
> ---------------------------------------------------------------------------------------
>
> Key: WFLY-5904
> URL: https://issues.jboss.org/browse/WFLY-5904
> Project: WildFly
> Issue Type: Bug
> Components: Clustering, EJB
> Reporter: Stuart Douglas
> Assignee: Paul Ferraro
> Attachments: passivationTestFailureDump.txt
>
>
> As seen in EJBClientDescriptorTestCase.testClientInvocationTimeout
> This can be reproduced locally by adding a loop around the final invocations in the test:
> {code}
> for (int i = 0; i < 1000; ++i) {
> Assert.assertEquals("bar", remote1.getManagedBeanMessage());
> Assert.assertEquals("bar", remote2.getManagedBeanMessage());
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (SECURITY-930) A security-domain can only load login-modules from a single JBoss module
by Stefan Guilhen (JIRA)
[ https://issues.jboss.org/browse/SECURITY-930?page=com.atlassian.jira.plug... ]
Stefan Guilhen commented on SECURITY-930:
-----------------------------------------
Derek, I recall working on a fix for this but I need to recheck if my PR was merged. Basically there was an issue with how the SecurityInfo used to store the jboss-module that simply would not allow references to multiple modules. Being more specific, the info class only had a single reference to a jboss-module and that causes trouble when you have more than one module as the second reference would override the first one.
The fix consisted in storing all modules that were set in the config (by changing the reference in the info class to a collection) and then change the ClassLoader used by the JBossCachedAuthenticationManager to use all the references available.
I'll try to find this commit and check if it has made it into WildFly. I'll post again once I figure this out.
> A security-domain can only load login-modules from a single JBoss module
> --------------------------------------------------------------------------
>
> Key: SECURITY-930
> URL: https://issues.jboss.org/browse/SECURITY-930
> Project: PicketBox
> Issue Type: Bug
> Components: JBossSX, Security-SPI
> Reporter: Derek Horton
> Assignee: Stefan Guilhen
>
> A security-domain can only load login-modules from a single JBoss module. Even though the security-domain configuration will allow each login module defined within a single security-domain to have a "module" attribute, the only module that is used to load the login-modules is the last "module" attribute that the parsing system locates.
> For example, with the following configuration, it looks like "org.jboss.example.CustomLoginModule" should be loaded from the "org.jboss.example" jboss-module and "org.jboss.example.CustomBaseCertLoginModule" should be loaded from the "org.jboss.another.example" jboss-module:
> <security-domain name="jmx-console" cache-type="default">
> <authentication>
> <login-module code="org.jboss.example.CustomLoginModule" module="org.jboss.example" flag="required">
> <module-option name="usersProperties" value="${jboss.server.config.dir}/users.properties"/>
> <module-option name="rolesProperties" value="${jboss.server.config.dir}/roles.properties"/>
> </login-module>
> <login-module code="org.jboss.example.CustomBaseCertLoginModule" module="org.jboss.another.example" flag="required">
> <module-option name="usersProperties" value="${jboss.server.config.dir}/users.properties"/>
> <module-option name="rolesProperties" value="${jboss.server.config.dir}/roles.properties"/>
> </login-module>
> </authentication>
> </security-domain>
> Unfortunately, it does not work like this. Only the "org.jboss.another.example" jboss-module is used to load the custom login modules.
> There seems to be two issues. 1) The security subsystem code only "remembers" the last module that is defined within a single security domain. 2) I think issue #1 is happening because the JBoss authentication code (org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate()) defers to the JVM's login module handling code. The JVM appears to treat the login modules as one atomic until and so a single classloader is set and then the JVM login module code is invoked to handle the authentication requests.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months