public function cleanup_slave($slaveId) { // ensure old slave is disconnected sql_disconnect_slave(); // connect the slave if ($slaveId == -1) { sql_connect_master_as_slave(); } else { sql_connect_slave($slaveId); } $this->cleanup_mapresult2($slaveId); // disconnect slave sql_disconnect_slave(); }
function sql_disconnect() { global $opt, $db; sql_disconnect_slave(); if ($opt['db']['pconnect'] == true && $db['dblink'] !== false) { if (count($db['temptables']) > 0) { foreach ($db['temptables'] as $table) { sqlf("DROP TEMPORARY TABLE IF EXISTS &tmpdb.`&1`", $table); } sqlf("DELETE FROM &db.`sys_temptables` WHERE `threadid`='&1'", mysql_thread_id($db['dblink'])); $db['temptables'] = array(); $db['temptables_slave'] = array(); } } if ($db['dblink'] === $db['dblink_slave']) { $db['dblink_slave'] = false; } //is connected and no persistent connect used? if ($opt['db']['pconnect'] == false && $db['dblink'] !== false) { mysql_close($db['dblink']); $db['dblink'] = false; $db['connected'] = false; } }