droolsjbpm/drools — pull request #71 by mrietveld (2011-11-30 12:36:46+00:00)
Title: Jbpm 3300 (DO NOT PULL)

While this commit solves the [JBPM-3300](https://issues.jboss.org/browse/JBPM-3300) problem, it also causes the tests listed below to fail.

*JBPM-3300 problem*:
When we insert an object into a knowledge session and _also_ into a work item and/or a process, then users expect the modifications to the object in the process to be mirrored in the state of the object in the ksession.

However, unmarshalling/deserialization (which uses SerializedPlaceholderResolverStrategy) breaks the "link" between the object in the ksession and the process, and recreates one object for the ksession and another for the process. Modifications to "the object" by either the ksession, process or user after that point then cause problems, obviously.

*Failing Tests*:
Unfortunately, I don't understand enough about Drools internals why the tests failing below are failing. Debugging has pointed to a number of things, including (possibly?) agenda items and (concurrent) node memories.

Help would be appreciated. :)

Failed tests:
testMarshallEntryPointsWithSlidingTimeWindow(org.drools.integrationtests.marshalling.MarshallingTest)
testMarshallEntryPointsWithSlidingLengthWindow(org.drools.integrationtests.marshalling.MarshallingTest)

Tests in error:
testCollect(org.drools.integrationtests.FirstOrderLogicTest)
testCollectNodeSharing(org.drools.integrationtests.FirstOrderLogicTest)
testCollectResultConstraints(org.drools.integrationtests.FirstOrderLogicTest)
testCollectFromMVELAfterOr(org.drools.integrationtests.FirstOrderLogicTest)
testInsertionOrderTwo(org.drools.integrationtests.BackwardChainingTest)
testAccumulate(org.drools.integrationtests.marshalling.MarshallingTest)