[
https://issues.redhat.com/browse/DROOLS-5668?page=com.atlassian.jira.plug...
]
Sylvain Lemoine edited comment on DROOLS-5668 at 9/24/20 4:28 PM:
------------------------------------------------------------------
ok thanks you for considering this issue as deserialization of kieSession from previous
drools version is pretty critical for our project.
Anyway, I push a bit further my investigations and simply letting pass accumulate node as
I did was obviously wrong due to the way tuple for dormant activation are now fully
serialized (A), and it takes part in the definition of the activationkey in
dormantActivations. As (A) is not present in earliest 7.x serialized session, the
following piece of code is not able to filter dormant activation:
{code:java}
RuleImpl rule = activation.getRule();
ActivationKey activationKey = PersisterHelper.hasNodeMemory( rtn ) ?
PersisterHelper.createActivationKey( rule.getPackageName(), rule.getName(),
activation.getTuple().toObjects(true)) :
PersisterHelper.createActivationKey( rule.getPackageName(), rule.getName(),
activation.getTuple() );
this.tuplesCache.put( activationKey, activation.getTuple() );
return !dormantActivations.contains(activationKey);{code}
was (Author: slem1):
I push a bit further my investigations, seems due to the way tuple for dormant activation
are now fully serialized (A), and it takes part in the definition of the activationkey in
dormantActivations. As (A) is not present in earliest 7.x serialized session, the
following piece of code is not able to filter dormant activation:
{code:java}
RuleImpl rule = activation.getRule();
ActivationKey activationKey = PersisterHelper.hasNodeMemory( rtn ) ?
PersisterHelper.createActivationKey( rule.getPackageName(), rule.getName(),
activation.getTuple().toObjects(true)) :
PersisterHelper.createActivationKey( rule.getPackageName(), rule.getName(),
activation.getTuple() );
this.tuplesCache.put( activationKey, activation.getTuple() );
return !dormantActivations.contains(activationKey);{code}
Latest drools minor versions broke deserialization from earliest 7.x
version due to changes made on the serialization/deserialization of node memories
------------------------------------------------------------------------------------------------------------------------------------------------------
Key: DROOLS-5668
URL:
https://issues.redhat.com/browse/DROOLS-5668
Project: Drools
Issue Type: Bug
Components: core engine
Affects Versions: 7.43.1.Final
Reporter: Sylvain Lemoine
Assignee: Mario Fusco
Priority: Major
Attachments: drools-node-memories-serialization.tar.gz
Latest drools minor versions broke deserialization from earliest 7.x version due to
changes made on the serialization/deserialization
of node memories. For instance it happens if a serialization has been done with earliest
version and accumulate node.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)