Disregard that, I spoke too soon. There is something going on after it 
starts the commit process.

On Tuesday, December 4, 2012 3:35:40 PM UTC-5, Jason wrote:
>
> Does this mean there is a limit to the number of queries I can run in a 
> transaction? 
>
> For example I am looping about 20 times. For each loop I insert one or two 
> rows and do at least one query. There might be some more implicit queries 
> when accessing relationship properties. If I set Session.autoflush to false 
> before the loop and then set it back to true afterwards it works.
>
> On Tuesday, December 4, 2012 3:16:24 PM UTC-5, Michael Bayer wrote:
>>
>>
>> On Dec 4, 2012, at 3:04 PM, Jason wrote:
>>
>> After upgrading to SQLAlchemy 0.7.9 I know receive an error  "FlushError: 
>> Over 100 subsequent flushes have occurred within session.commit() - is an 
>> after_flush() hook creating new objects?" which is was introduced by 
>> http://docs.sqlalchemy.org/en/latest/changelog/changelog_07.html#change-75a53327aac5791fe98ec087706a2821in
>>  the changelog. 
>>
>> I don't have any after_flush event handlers.  I do have a before_flush 
>> event handler that changes the state of a related object, but that doesn't 
>> sound like what the error is talking about.
>>
>> How can I debug this further? I am doing this within a Pyramid 
>> application, so I am somewhat removed from the commit logic.
>>
>>
>> this error traps the condition that dirty state remains in the Session 
>> after a flush has completed.    This is possible if an after_flush hook has 
>> added new state, or perhaps also if a mapper.after_update/after_insert etc 
>> hook, or even a before_update/before_insert has modified the flush plan, 
>> which is not appropriate in any case.
>>
>> the best way is to actually create an after_flush() hook with a 
>> "pdb.set_trace()" in it; in there, you'd just look at session.new, 
>> session.dirty, and session.deleted to ensure that they are empty.
>>
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sqlalchemy/-/bMT7ZGGadP8J.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to