> My question is, why is this kind of transactional locking not supported
> by Falcon?
The fundamental problem is that the designer of Falcon (and I) think
that the LOCK TABLE statement is a really bad idea, and that locking
ought to be handled by the database engine, as needed.
Here's what the manual says:
"MySQL enables client sessions to acquire table locks explicitly for the
purpose of cooperating with other sessions for access to tables, or to
prevent other sessions from modifying tables during periods when a
session requires exclusive access to them."
In Falcon, tables are always shared (for DML) and never require
exclusive access (for DML). DDL is another issue, and the server
is working on a mechanism to grant exclusive access to tables
when metadata will change.
So we didn't implement transactional locking and in its absence,
the server provides non-transactional locking.
Whether that's evidence of bad corporate citizenship, I don't
really want to say.