Commit Graph

8 Commits

Author SHA1 Message Date
Andrew Nicols 9536ca738e MDL-83468 phpunit: Do not throw exception in mocked destructor
PHPUnit removed the ability to mock a destructor, but our lock system
throws an exception if a lock has not been explicitly released in its
destructor.

Normally thhis is fine because the lock is released, and if not then we
want to know about it.

However, where we are mocking the lock, we do not actually obtain the
lock, and we may expect the test to fail.

This change moves the release and notification to a separate, reusable
public method, which is called from the destructor. This allows it to be
mocked at the appropriate time.
2025-01-20 16:47:56 +01:00
Paul Holden c21a4aebeb MDL-69653 cache: final removal of deprecated lock methods. 2023-06-14 16:19:57 +01:00
sam marshall 81b4f04fb3 MDL-74960 core\lock: Performance info - display lock performance
Show performance information about locks (time taken to acquire lock,
time lock is held for) in the 'perfinfo' display.

Also show existing information (that was already calculated but not
shown before) about the session lock, which is not a 'core\lock' type
lock, but the information is similarly useful.
2022-09-26 11:24:10 +01:00
Eloy Lafuente (stronk7) 6a60111199 MDL-69521 core: Move all comments in code from 4.0 to 3.10 2020-09-06 17:00:25 +02:00
Mihail Geshoski 566b73fbfc MDL-67594 core_lock: Deprecate extend() 2020-07-06 13:04:33 +08:00
Brendan Heywood e8a1c3e908 MDL-49747 Task: Improve coding error expection message 2015-04-03 11:11:51 +11:00
Sam Hemelryk 34027f1563 MDL-25500 lock: post integration trivial cleanup
* A couple of misc comment typo's
* Added missing $CFG required global in file_lock_factory::is_available
* Removed unused $CFG global from file_lock_factory::get_lock
* A couple of trivial phpdoc tweaks
* Removed unused $DB global from postgres_lock_factory::get_index_from_key
* Added global namespace \ to exceptions in get_index_from_key (tested and found they didn't resolve)
2014-01-29 13:22:16 +13:00
Damyon Wiese 9843e5ece5 MDL-25500 lock: New locking framework.
This locking system is designed to be used everywhere requiring
locking in Moodle. Each use of the locking system can be configured
to use a different type of locking (or the same type with a different
configuration).

The first supported lock types are memcache, memcached, file (flock),
db (specific handlers for pg, mysql and mariadb).
2014-01-27 10:04:18 +08:00