43 }
catch (Exception
$e) {
44 $this->ilDBInstance->unlockTables();
47 $this->ilDBInstance->unlockTables();
58 foreach ($this->tables as $table) {
59 $full_name = $table->getTableName() . $table->getAlias();
60 if (in_array($full_name, $this->locked_table_full_names)) {
63 $this->locked_table_full_names[] = $full_name;
65 if (!in_array($table->getTableName(), $this->locked_table_names)) {
66 $locks[] = array(
'name' => $table->getTableName(),
'type' => $table->getLockLevel() );
67 $this->locked_table_names[] = $table->getTableName();
68 if ($table->isLockSequence() && $this->ilDBInstance->sequenceExists($table->getTableName())) {
69 $locks[] = array(
'name' => $table->getTableName(),
'type' => $table->getLockLevel(),
'sequence' =>
true );
72 if ($table->getAlias()) {
73 $locks[] = array(
'name' => $table->getTableName(),
'type' => $table->getLockLevel(),
'alias' => $table->getAlias() );
An exception for terminatinating execution or to throw for unit testing.
Class ilAtomQueryException.
const DB_ATOM_IDENTICAL_TABLES