openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daryl Stultz <da...@6degrees.com>
Subject Non-unique error
Date Tue, 12 Jan 2010 18:59:44 GMT
Hello,

I'm hoping someone can tell me how this could happen:

<openjpa-1.2.1-r752877:753278 nonfatal user error>
org.apache.openjpa.persistence.NonUniqueResultException:
The query on candidate type "class ...model.User"
with filter
"select distinct o from User as o
left join fetch o.validRoles
left join fetch o.excludedConsultants
left join fetch o.excludedPatientConsiderations
left join fetch o.excludedProcedures where o.id = :id"
was configured to have a unique result, but more than one instance matched
the query.
        at
org.apache.openjpa.kernel.QueryImpl.singleResult(QueryImpl.java:1296)
        at org.apache.openjpa.kernel.QueryImpl.toResult(QueryImpl.java:1221)
        at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:990)
        at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:848)
        at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:779)
        at
org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:525)
        at
org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:254)
        at
org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:317)

When run in isolation in test app it works fine. My real usage is that I'm
trying to "load deep" the user. So I have a detached user instance and I'm
reloading the user fetching the various collections. It's possible the user
instance is in the L1 cache. Perhaps OpenJPA is including the cached user
instance in the results. I know there are bugs related to left join and
distinct but I'm not sure if this is a variation of it.

Everything works fine if I use fetch plan to load the collections (which I
prefer) but I'm generally afraid of this due to bug [1].

[1] https://issues.apache.org/jira/browse/OPENJPA-1424

-- 
Daryl Stultz
_____________________________________
6 Degrees Software and Consulting, Inc.
http://www.6degrees.com
mailto:daryl@6degrees.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message