]
Paul Ferraro updated WFLY-7630:
-------------------------------
Fix Version/s: 11.0.0.Alpha1
Public singleton API is not binary compatible with WF10
-------------------------------------------------------
Key: WFLY-7630
URL:
https://issues.jboss.org/browse/WFLY-7630
Project: WildFly
Issue Type: Bug
Components: Clustering
Affects Versions: No Release
Reporter: Paul Ferraro
Assignee: Paul Ferraro
Priority: Critical
Fix For: 11.0.0.Alpha1
The public singleton API changed recently and is not binary compatible any more.
The change was introduced by:
https://github.com/jbossas/jboss-eap7/pull/907/files#diff-dac46a30e73e80f...
[
SingletonPolicy.java|https://github.com/jbossas/jboss-eap7/blob/7.x/clust...]
has changed:
Now:
{code}
<T> SingletonBuilder<T> createSingletonServiceBuilder(ServiceName name,
Service<T> service);
{code}
Before:
{code}
<T> Builder<T> createSingletonServiceBuilder(ServiceName name,
Service<T> service);
{code}
The change is source compatible, however not binary compatible.
This results in NoSuchMethodError:
{code}
[JBossINF] [0m[31m02:26:32,982 ERROR [org.jboss.msc.service.fail] (MSC service thread
1-1) MSC000001: Failed to start service
jboss.deployment.unit."SStest-ejb-service-activator.jar".INSTALL:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."SStest-ejb-service-activator.jar".INSTALL: WFLYSRV0153:
Failed to process phase INSTALL of deployment
"SStest-ejb-service-activator.jar"
[JBossINF] at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:154)
[JBossINF] at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1963)
[JBossINF] at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1896)
[JBossINF] at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[JBossINF] at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[JBossINF] at java.lang.Thread.run(Thread.java:745)
[JBossINF] Caused by: java.lang.NoSuchMethodError:
org.wildfly.clustering.singleton.SingletonPolicy.createSingletonServiceBuilder(Lorg/jboss/msc/service/ServiceName;Lorg/jboss/msc/service/Service;)Lorg/wildfly/clustering/service/Builder;
[JBossINF] at
org.jboss.test.singletonservice.SingletonActivator.activate(SingletonActivator.java:29)
[JBossINF] at
org.jboss.as.server.deployment.service.ServiceActivatorProcessor.deploy(ServiceActivatorProcessor.java:91)
[JBossINF] at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147)
[JBossINF] ... 5 more
{code}
Link to the server log:
http://jenkins.mw.lab.eng.bos.redhat.com/hudson/job/perflab_eap-7x-failov...