cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: RefreshQuery not supports insert/delete?
Date Wed, 25 Jun 2008 13:26:57 GMT
This is a bug. Let me see if there is a quick fix.

https://issues.apache.org/cayenne/browse/CAY-1082

Andrus


On Jun 24, 2008, at 1:37 PM, Andrey Razumovsky wrote:

> Hi!
>
>
> I can't figure out how to make the refreshing query work with  
> inserting or
> deleting rows in database. For instance:
>
>
> Artist a = ...
>
> assert a.getPaintingsArray().size() == 0;
>
>
> //here is direct insert into database a painting of artist a  
> (artistid=a.id
> )
>
>
> RefreshQuery refresher = new RefreshQuery();
>
> context.performGenericQuery(refresher);
>
>
> assert a.getPaintingsArray().size() == 1; //that's false
>
>
>
> Everything works perfect when I sql-update in database. When i sql- 
> delete,
> i do also get an exception like this:
>
> org.apache.cayenne.FaultFailureException: [v.3.0M4 May 18 2008  
> 16:32:02]
> Error resolving fault, no matching row exists in the database for  
> ObjectId:
> <ObjectId:Apkforecast, apkforecastid=3>
>
> at org.apache.cayenne.BaseContext.prepareForAccess(BaseContext.java: 
> 100)
>
> at com.nic.rainbow.data.auto._Apkforecast.getDate(_Apkforecast.java: 
> 29)
>
> ...and so on
>
> when i try to iterate through related array
>
>
> I'm using ROP if that helps. By the way, when i restart client, the  
> data
> becomes correct, so i assume everything has changed correctly on a  
> server.
>
> If that's not supported, can you give me some advice to manually  
> refresh the
> desired relationships?
>
>
> Thanks,
>
> Andrey


Mime
View raw message