Still looking at the exclusive use of the tables by med and I fail to
see the reason for that. Exclusivity is something desirable for critical
information and I guess some might consider their movie data critical
but even if it was somehow corrupted by another access it would
certainly not be unrecoverable. Anyway we're not talking about
government secrets here. And all bases could be covered by giving the
user the option of opening the tables in exclusive mode or not as part
of the configuration.
I also tried to determine how this was implemented. I've opened the med
database from two different connections (MySQL and SQL Explorer via
Eclipse) and they allowed me simultaneous access without complaints. Of
course med groused about it when I launched it while either was active
because it could not acquire (I assume) exclusive access. So this leads
me to think that this exclusivity is not native to the database itself.
HSQLDB documents a READ and a WRITE lock but either will still allow
another connection to access the data as long as the lock is not
violated. Furthermore, aren't these locks limited to a row, not the
entire table? So how does med acquire exclusive use?