I found some time between projects to backport the entity engine fixes to the release 12 branch.

Due to the seriousness of these issues, I recommend we create a new binary release.

-Adrian

On 5/19/2013 2:25 PM, Adrian Crum wrote:
In revision 1484279 I believe I have fixed the last of the entity cache issues. FYI - there were flaws in the entity cache code that GUARANTEED stale values. In other words, data coming from the caches was unreliable.

In addition, I fixed a flaw in the GenericEntity/GenericValue classes that allowed other threads to modify a shared instance that was supposed to be immutable. This is a serious problem because it is common practice to cast a Generic Entity to a java.util.Map, then pass it on to various methods - with the result that in some remote corner of the project a method thinks it is modifying a Map, but in reality it is modifying a supposedly immutable GenericEntity.

These bugs are serious, and they really need to be fixed in the older versions. The problem is, I have spent almost all of my free time fixing these in the trunk, and I don't have any more free time to spare. In other words, I need your help.

The bug fixes are mixed in with other changes I was doing at the time, so I can't provide a simple list of revisions to backport. One approach would be to copy the trunk EntityTestSuite.java to a release branch, and start fixing the tests that fail - using the related trunk commits as a guide.

So, if anyone is willing to help, I can provide some guidance - but I can't do it all myself.

-Adrian


Reply via email to