Hi Blake, Can you please include the code in which you enqueue the task?
-Nick Johnson On Thu, Mar 18, 2010 at 4:00 AM, Blake <[email protected]> wrote: > A bug in my code sent my tasks out of control, so I'm temporarily at > my limit for the day. One of my database inserts is in a transaction > that kicks off a task, per instructions here: > > > http://code.google.com/appengine/docs/java/taskqueue/overview.html#Task_Within_Transactions > > As expected, the task queuing failed because of my quota issues, but > my database insert succeeded. This isn't good. > > I verified that I'm calling rollback on my transaction, but my record > it still making it to the database. What am I doing wrong!?!? > > here's the basic logic: > > Transaction tx = pm.currentTransaction(); > try{ > tx.begin() > > Foo foo = pm.getObjectById(...) > foo.setBar(1); > pm.makePersistent(foo); > > // queue up task (throws an exception) > > tx.commit(); > } > finally > { > if(tx.isActive()) > { > // i verified that this is happening with a log statement > tx.rollback(); > } > } > > > I verified that rollback is happening with a lot statement in that > last block, but like I said, the database gets the record. My > temporary fix will be to try to queue up the task before committing > the record to the database, but then I'm relying on the task killing > itself later on when a database exception occurs. > > Am I using transactions wrong? > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<google-appengine%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > > -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
