Python DB API - commit() v. execute("commit transaction")?

Jon Ribbens jon+usenet at unequivocal.eu
Fri Jun 2 15:31:14 EDT 2017


On 2017-06-02, Chris Angelico <rosuav at gmail.com> wrote:
> On Sat, Jun 3, 2017 at 2:45 AM, Jon Ribbens <jon+usenet at unequivocal.eu> wrote:
>> Bewaare - MyISAM tables have no transactions for DML but they do have
>> transactions for DDL. Insane but true.
>
> Not insane; not all DBMSes have transactional DDL, and of the major
> ones, several have only more recently added it (despite having had
> rock-solid transactional DML for decades). It's an excellent feature
> but not easy to implement.

I'm not saying that transactional DDL is insane (it isn't), but MyISAM
tables having transactions *only* for DDL is... surprising. Especially
when it suddenly appeared as a "feature" in between two versions. It
took me quite a while to work out why our database was randomly hanging.



More information about the Python-list mailing list