Bug 724326 (BRMS-271)

Summary: BRMS 5.0.0 not compatible with future releases
Product: [JBoss] JBoss Enterprise BRMS Platform 5 Reporter: Jaroslaw Kijanowski <kijanowski>
Component: Documentation, DeploymentAssignee: Jervis Liu <jliu>
Status: CLOSED WONTFIX QA Contact:
Severity: unspecified Docs Contact:
Priority: urgent    
Version: 5.0.0 GA, 5.1.0 GA, 5.0.1, 5.0.2CC: jlocker, mproctor, tsurdilo
Target Milestone: ---   
Target Release: future   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/BRMS-271
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-26 20:17:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 724351    

Description Jaroslaw Kijanowski 2010-03-18 10:58:48 UTC
Date of First Response: 2010-03-29 11:17:12
securitylevel_name: Public

BRMS 5.0.0 is not compatible with 5.0.1 and 5.0.2. This means, that:

- a rule agent running with the engine libs from 5.0.0 cannot grab bits from BRMS 5.0.1 and BRMS 5.0.2
- a rule agent running with the engine libs from 5.0.1 or 5.0.2 cannot grab bits from BRMS 5.0.0

Comment 1 Jaroslaw Kijanowski 2010-03-18 11:19:10 UTC
Following exception is thrown when using a BRMS 5.0.2 package with a 5.0.0 Drools Agent:

     [2010:03:77 12:03:165:debug] KnowledgeAgent rebuilding KnowledgeBase using ChangeSet
     [2010:03:77 12:03:165:debug] KnowledgeAgent building resource=[UrlResource path='http://10.16.89.4:8080/jboss-brms/org.drools.guvnor.Guvnor/package/mortgages/LATEST']
     [2010:03:77 12:03:545:exception]
     java.lang.RuntimeException: KnowledgeAgent exception while trying to deserialize KnowledgeDefinitionsPackage  
     	at org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:417)
     	at org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:119)
     	at org.drools.agent.impl.KnowledgeAgentImpl.applyChangeSet(KnowledgeAgentImpl.java:108)
     	at org.jboss.qa.brms.bwdcmp.agent.AgentVerifier.main(AgentVerifier.java:59)
     	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     	at java.lang.reflect.Method.invoke(Method.java:585)
     	at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:217)
     	at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:152)
     	at org.apache.tools.ant.taskdefs.Java.run(Java.java:747)
     	at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:201)
     	at org.apache.tools.ant.taskdefs.Java.execute(Java.java:104)
     	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
     	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     	at java.lang.reflect.Method.invoke(Method.java:585)
     	at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
     	at org.apache.tools.ant.Task.perform(Task.java:348)
     	at org.apache.tools.ant.Target.execute(Target.java:357)
     	at org.apache.tools.ant.Target.performTasks(Target.java:385)
     	at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
     	at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
     	at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
     	at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
     	at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
     	at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
     	at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
     Caused by: java.lang.NullPointerException
     	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1820)
     	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
     	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
     	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
     	at org.drools.rule.DialectRuntimeRegistry.readExternal(DialectRuntimeRegistry.java:41)
     	at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1755)
     	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1717)
     	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
     	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
     	at org.drools.rule.Package.readExternal(Package.java:197)
     	at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1755)
     	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1717)
     	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
     	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
     	at org.drools.util.DroolsStreamUtils.streamIn(DroolsStreamUtils.java:189)
     	at org.drools.util.DroolsStreamUtils.streamIn(DroolsStreamUtils.java:158)
     	at org.drools.agent.impl.KnowledgeAgentImpl.rebuildResources(KnowledgeAgentImpl.java:407)
     	... 28 more


Comment 5 Dana Mison 2010-04-06 06:17:10 UTC
Documented as a Migration Issue in the 5.0.2 release notes:

The serialization of binary resources used in JBoss Enterprise BRMS Platform 5.0.1 and later is not backwards compatible with the 5.0.0 release.  This is because of a necessary bug fix that unavoidably changed the structure of the data being serialized.

This means that:

1 - Client applications built using the JBoss Rules engine libraries from the 5.0.0 release are unable to use resources being served from a JBoss Enterprise BRMS Platform server of version 5.0.1 or later.

2 - Client applications built using the JBoss Rules engine libraries from the 5.0.1 and later releases are unable to user resources being server from a JBoss Enterprise BRMS Platform 5.0.0 server.

Comment 7 Len DiMaggio 2010-04-19 15:10:56 UTC
Link: Added: This issue is a dependency of BRMS-297


Comment 9 Jervis Liu 2010-08-11 16:34:36 UTC
Same issue exists between 5.1 and 5.0.2.