Page MenuHomenazrin ltd
Diviner Tech Docs PhabricatorRepositoryWorkingCopyVersion

final class PhabricatorRepositoryWorkingCopyVersion
Phorge Technical Documentation (Repositories)

This class is not documented.

Methods

public function getApplicationName()
Inherited

This method is not documented.
Return
wild

protected function getConfiguration()

This method is not documented.
Return
wild

public function getWriteProperty($key, $default)

This method is not documented.
Parameters
$key
$default
Return
wild

public static function loadVersions($repository_phid)

This method is not documented.
Parameters
$repository_phid
Return
wild

public static function loadWriter($repository_phid)

This method is not documented.
Parameters
$repository_phid
Return
wild

public static function getReadLock($repository_phid, $device_phid)

This method is not documented.
Parameters
$repository_phid
$device_phid
Return
wild

public static function getWriteLock($repository_phid)

This method is not documented.
Parameters
$repository_phid
Return
wild

public static function willWrite($locked_connection, $repository_phid, $device_phid, $write_properties, $lock_owner)

Before a write, set the "isWriting" flag.

This allows us to detect when we lose a node partway through a write and may have committed and acknowledged a write on a node that lost the lock partway through the write and is no longer reachable.

In particular, if a node loses its connection to the database the global lock is released by default. This is a durable lock which stays locked by default.

Parameters
AphrontDatabaseConnection$locked_connection
$repository_phid
$device_phid
array$write_properties
$lock_owner
Return
wild

public static function didWrite($repository_phid, $device_phid, $old_version, $new_version, $lock_owner)

After a write, update the version and release the "isWriting" lock.

Parameters
$repository_phid
$device_phid
$old_version
$new_version
$lock_owner
Return
wild

public static function updateVersion($repository_phid, $device_phid, $new_version)

After a fetch, set the local version to the fetched version.

Parameters
$repository_phid
$device_phid
$new_version
Return
wild

public static function demoteDevice($repository_phid, $device_phid)

Explicitly demote a device.

Parameters
$repository_phid
$device_phid
Return
wild