|
From: <hv...@us...> - 2011-06-24 12:03:38
|
Revision: 53228
http://firebird.svn.sourceforge.net/firebird/?rev=53228&view=rev
Author: hvlad
Date: 2011-06-24 12:03:32 +0000 (Fri, 24 Jun 2011)
Log Message:
-----------
Delete deferred work when savepoint is cleaned up after failure even if no records was modified. Else DFW task will be repeated at commit making system tables logically inconsistent.
Modified Paths:
--------------
firebird/trunk/src/jrd/vio.cpp
Modified: firebird/trunk/src/jrd/vio.cpp
===================================================================
--- firebird/trunk/src/jrd/vio.cpp 2011-06-24 11:52:00 UTC (rev 53227)
+++ firebird/trunk/src/jrd/vio.cpp 2011-06-24 12:03:32 UTC (rev 53228)
@@ -3292,7 +3292,7 @@
// Cleanup/merge deferred work/event post
- if (sav_point->sav_verb_actions || (sav_point->sav_flags & SAV_force_dfw))
+ if (sav_point->sav_verb_actions || sav_point->sav_verb_count || (sav_point->sav_flags & SAV_force_dfw))
{
if (sav_point->sav_verb_count) {
DFW_delete_deferred(transaction, sav_point->sav_number);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|