[Zope] _mysql_exceptions.NotSupportedError

Andy Dustman andy@dustman.net
22 Feb 2002 13:06:02 -0500


On Thu, 2002-02-21 at 20:29, Carl Batten wrote:
> I get a "_mysql_exceptions.NotSupportedError: (1196 "Warning: Some
> non-transactional changed tables couldn't be rolled back.")" error at
> seemingly random intervals.    It happens when inserting a record into a
> table through a ZSQL method, but not every time.  The site user can go back
> to the form from the error page (with the browser's back button)  and
> resubmit the form and it will work fine the second time.
> 
> If I check the database after receiving the error and before retrying, the
> record is there.  Retrying produces a duplicate record. Since it succeeded,
> nothing should need to be rolled back, which makes the  error message hard
> to understand.  In any case, my tables are in MyISAM format and don't
> support rollbacks.

Apparently your MySQL server does support transactions, even though you
are not using transaction-safe tables. Add a dash (-) to the beginning
of your connection string and that will solve one problem (rollback is
triggered by a ConflictError) and create another (you'll still be
getting the ConflictErrors, you just won't see them). Real solution is
to use a transactional database (MySQL-Max with InnoDB tables,
Postgresql, etc.).
 
> ZMySQLDA version 2.0.8
> MySQL-Python version 0.9.1
> mysqld version 3.23.36

You might also try ZMySQLDA 2.0.9 (current test release, will become the
real release soon, no problems found, and some fixed).

-- 
Andy Dustman         PGP: 0x930B8AB6
    @       .net     http://dustman.net/andy
You can have my keys when you pry them from my dead, cold neurons.