MediaWiki  REL1_20
MySqlLockManager Class Reference

MySQL version of DBLockManager that supports shared locks. More...

Inheritance diagram for MySqlLockManager:
Collaboration diagram for MySqlLockManager:

List of all members.

Protected Member Functions

 getLocksOnServer ($lockSrv, array $paths, $type)
 Get a connection to a lock DB and acquire locks on $paths.
 initConnection ($lockDb, DatabaseBase $db)

Protected Attributes

Array $lockTypeMap
 Mapping of lock types to the type actually used *.

Detailed Description

MySQL version of DBLockManager that supports shared locks.

All locks are non-blocking, which avoids deadlocks.

Definition at line 293 of file DBLockManager.php.


Member Function Documentation

MySqlLockManager::getLocksOnServer ( lockSrv,
array $  paths,
type 
) [protected]

Get a connection to a lock DB and acquire locks on $paths.

This does not use GET_LOCK() per http://bugs.mysql.com/bug.php?id=1118.

See also:
DBLockManager::getLocksOnServer()
Returns:
Status

Reimplemented from DBLockManager.

Definition at line 316 of file DBLockManager.php.

MySqlLockManager::initConnection ( lockDb,
DatabaseBase db 
) [protected]
Parameters:
$lockDbstring
$dbDatabaseBase

Reimplemented from DBLockManager.

Definition at line 304 of file DBLockManager.php.


Member Data Documentation

Array MySqlLockManager::$lockTypeMap [protected]
Initial value:
 array(
                self::LOCK_SH => self::LOCK_SH,
                self::LOCK_UW => self::LOCK_SH,
                self::LOCK_EX => self::LOCK_EX
        )

Mapping of lock types to the type actually used *.

Reimplemented from LockManager.

Definition at line 294 of file DBLockManager.php.


The documentation for this class was generated from the following file: