[JBoss JIRA] (AS7-4160) CLONE - Double-checked locking in org.jboss.weld.util.BeansClosure#getClosure is a cause for NPE
by Stuart Douglas (JIRA)
Stuart Douglas created AS7-4160:
-----------------------------------
Summary: CLONE - Double-checked locking in org.jboss.weld.util.BeansClosure#getClosure is a cause for NPE
Key: AS7-4160
URL: https://issues.jboss.org/browse/AS7-4160
Project: Application Server 7
Issue Type: Bug
Components: CDI / Weld
Affects Versions: 7.1.0.Final, 7.1.1.Final
Environment: N/A
Reporter: Anton Arhipov
Assignee: Stuart Douglas
Application deployment fails with a following exception:
05:33:26,201 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC00001: Failed to start service jboss.deployment.unit."exp-cdi-injectApplication.war".WeldService: org.jboss.msc.service.StartException in service jboss.deployment.unit."exp-cdi-injectApplication.war".WeldService: java.lang.NullPointerException
at org.jboss.as.weld.services.WeldService.start(WeldService.java:83)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_27]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_27]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_27]
Caused by: java.lang.NullPointerException
at org.jboss.weld.bootstrap.BeanDeployment.createBeans(BeanDeployment.java:194)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:336)
at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:82)
at org.jboss.as.weld.services.WeldService.start(WeldService.java:76)
... 5 more
Looking at the code that belongs to weld-core-1.1.5.AS71.Final, we can see the following at the lines 193-194 of BeanDeployment:
193: BeansClosure closure = BeansClosure.getClosure(this.beanManager);
194: closure.addEnvironment(this.beanDeployer.getEnvironment());
Which leads to a conclusion that closure is null (the lines prior to the mentioned ones show that beanDeployer itself couldn't be null).
Looking into BeansClosure#getClosure():
public static BeansClosure getClosure(BeanManagerImpl beanManager)
{
BeansClosure closure = (BeansClosure)closureMap.get(beanManager);
if (closure == null) {
synchronized (closureMap) {
if (!closureMap.containsKey(beanManager)) {
closure = new BeansClosure();
for (Iterable beanManagers : BeanManagers.getAccessibleClosure(beanManager)) {
for (BeanManagerImpl accessibleBeanManager : beanManagers) {
closureMap.put(accessibleBeanManager, closure);
}
}
}
}
}
return closure;
}
To prevent race conditions, maybe it makes sense to reside the full method body into synchronized block.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month
[JBoss JIRA] Created: (AS7-1893) JDBC cache store configuration improvements
by Manik Surtani (JIRA)
JDBC cache store configuration improvements
-------------------------------------------
Key: AS7-1893
URL: https://issues.jboss.org/browse/AS7-1893
Project: Application Server 7
Issue Type: Feature Request
Components: Clustering
Reporter: Manik Surtani
Assignee: Paul Ferraro
Fix For: 7.1.0.Beta1
The current <jdbc-store ...> element isn't quite explicit enough to differentiate between the 3 types of JDBC cache stores Infinispan has to offer. <string-keyed-jdbc-store ... >, <binary-keyed-jdbc-store ... > and <mixed-keyed-jdbc-store ... > may be better. Similarly, <bucket-table> and <entry-table> expose implementation details. <binary-keyed-table ...> and <string-keyed-table ... > may be better.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month
[JBoss JIRA] (AS7-4140) Change distributtion of -Dmcast through testsuite
by Ondrej Zizka (JIRA)
[ https://issues.jboss.org/browse/AS7-4140?page=com.atlassian.jira.plugin.s... ]
Ondrej Zizka commented on AS7-4140:
-----------------------------------
I'll get to this at the end of this week, is that ok? I'll include it in a bunch of other updates.
> Change distributtion of -Dmcast through testsuite
> -------------------------------------------------
>
> Key: AS7-4140
> URL: https://issues.jboss.org/browse/AS7-4140
> Project: Application Server 7
> Issue Type: Feature Request
> Components: Test Suite
> Affects Versions: 7.1.1.Final
> Reporter: Pavel Janousek
> Assignee: Ondrej Zizka
> Priority: Blocker
> Fix For: 7.1.2.Final
>
>
> Please change present behavior.
> We need to define only one property -Dmcast (for ex., the name doesn't matter now) as command line parameter - this multicast address is needed to be distributed to every subsystem which manages any multicast communication. It is needed to be unique in every subsystem - JGroups, HornetQ etc. because we must avoid to interfere each other => port assignation must be unique for every a such component.
> This change is needed in both - IPV4 and IPv6...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month
[JBoss JIRA] (AS7-4140) Change distributtion of -Dmcast through testsuite
by Richard Achmatowicz (JIRA)
[ https://issues.jboss.org/browse/AS7-4140?page=com.atlassian.jira.plugin.s... ]
Richard Achmatowicz commented on AS7-4140:
------------------------------------------
I mentioned earlier in this JIRA that I was seeing test failures whentesting with IPv6 addresses on my local machine. This was due to testsuite configuration errors concerning using distinct nodes and port offsets in the arquillian.xml file and only using port offsets when building the configuration. Tese were fixed by Jason last week. So it looks as though the IPv6 testsuite runs fine, both with loppback and non-loopback global addresses.
> Change distributtion of -Dmcast through testsuite
> -------------------------------------------------
>
> Key: AS7-4140
> URL: https://issues.jboss.org/browse/AS7-4140
> Project: Application Server 7
> Issue Type: Feature Request
> Components: Test Suite
> Affects Versions: 7.1.1.Final
> Reporter: Pavel Janousek
> Assignee: Richard Achmatowicz
> Priority: Blocker
> Fix For: 7.1.2.Final
>
>
> Please change present behavior.
> We need to define only one property -Dmcast (for ex., the name doesn't matter now) as command line parameter - this multicast address is needed to be distributed to every subsystem which manages any multicast communication. It is needed to be unique in every subsystem - JGroups, HornetQ etc. because we must avoid to interfere each other => port assignation must be unique for every a such component.
> This change is needed in both - IPV4 and IPv6...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month
[JBoss JIRA] (AS7-4140) Change distributtion of -Dmcast through testsuite
by Richard Achmatowicz (JIRA)
[ https://issues.jboss.org/browse/AS7-4140?page=com.atlassian.jira.plugin.s... ]
Richard Achmatowicz edited comment on AS7-4140 at 3/13/12 1:49 PM:
-------------------------------------------------------------------
I mentioned earlier in this JIRA that I was seeing test failures whentesting with IPv6 addresses on my local machine. This was due to testsuite configuration errors concerning using distinct nodes and port offsets in the arquillian.xml file and only using port offsets when building the configuration.
These issues were fixed by Jason last week. So it looks as though the IPv6 testsuite runs fine, both with loopback and non-loopback global addresses.
was (Author: rachmato):
I mentioned earlier in this JIRA that I was seeing test failures whentesting with IPv6 addresses on my local machine. This was due to testsuite configuration errors concerning using distinct nodes and port offsets in the arquillian.xml file and only using port offsets when building the configuration. Tese were fixed by Jason last week. So it looks as though the IPv6 testsuite runs fine, both with loppback and non-loopback global addresses.
> Change distributtion of -Dmcast through testsuite
> -------------------------------------------------
>
> Key: AS7-4140
> URL: https://issues.jboss.org/browse/AS7-4140
> Project: Application Server 7
> Issue Type: Feature Request
> Components: Test Suite
> Affects Versions: 7.1.1.Final
> Reporter: Pavel Janousek
> Assignee: Richard Achmatowicz
> Priority: Blocker
> Fix For: 7.1.2.Final
>
>
> Please change present behavior.
> We need to define only one property -Dmcast (for ex., the name doesn't matter now) as command line parameter - this multicast address is needed to be distributed to every subsystem which manages any multicast communication. It is needed to be unique in every subsystem - JGroups, HornetQ etc. because we must avoid to interfere each other => port assignation must be unique for every a such component.
> This change is needed in both - IPV4 and IPv6...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month