VersionedItem should not extend Item, otherwise query cache results are confusing

Description

Fix org.hibernate.test.cache.infinispan.functional.BasicTransactionalTestCase.testQueryCache failure:

The difference in behavior recently is the following: Hibernate has always treated VersionedItem and Item as two query translators for queries like "from Item". The difference is that in the past, the 2nd time a query was executed, VersionedItem query resulted on a query put whereas now it's a query hit. This leads to query hits being 2 instead of 1. 2 is probably correct if you consider VersionedItem to be an Item, which it is. In the past, VersionedItem query would have been considered a put, even the second time around and so query hit was only 1.

If you want to investigate further, simply have two entities, one extending each other and do 2 queries with "from X" where X is the top class. In 3.5.0, the first query resulted in two query puts and the second one resulted in 1 query put, 1 query hit. In trunk and 3.5.x now, the first query results in two query puts and the 2nd query in two query hits.

For my tests, I'm getting rid of this polymorphism to avoid testing stuff I don't need to be testing from an Infinispan perspective.

Environment

None

Activity

Show:
Steve Ebersole
March 21, 2011, 7:08 PM

Bulk closing stale resolved issues

Fixed

Assignee

Galder Zamarreno

Reporter

Galder Zamarreno

Fix versions

Labels

None

backPortable

None

Suitable for new contributors

None

Requires Release Note

None

Pull Request

None

backportDecision

None

Affects versions

Priority

Major
Configure