Feature #47712

Refactor Locking

Added by Daniel Hürtgen over 6 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
Backend API
Target version:
Start date:
2013-02-08
Due date:
% Done:

100%

PHP Version:
5.5
Tags:
Complexity:
hard
Sprint Focus:
Remote Sprint

Description

-- to be continued --


Related issues

Related to TYPO3 Core - Bug #55294: Under heavy load, two request can simultaneously write to same cache file - should use locking Closed 2014-01-24
Related to TYPO3 Core - Bug #55099: PHP Warnings after clearing configuration cache in BE Closed 2014-01-17
Related to TYPO3 Core - Bug #66503: Core: Error handler (FE): PHP Warning: sem_get(): failed for key 0xbaa3533: No space left on device Closed 2015-04-20
Precedes TYPO3 Core - Bug #66411: New locking API exceptions too generic Closed 2015-04-14

Associated revisions

Revision 889d9d09 (diff)
Added by Markus Klein over 4 years ago

[FEATURE] Add Locking API

This patch adds a flexible locking API, which allows to be
extended by extensions.

It also deprecates the old API and adjusts all Core usages.

Resolves: #47712
Releases: master
Change-Id: Iff144b4dd7d5d3fed357380f1669a92dece04c2c
Reviewed-on: http://review.typo3.org/37700
Reviewed-by: Helmut Hummel <>
Tested-by: Helmut Hummel <>
Reviewed-by: Alexander Opitz <>
Tested-by: Alexander Opitz <>

Revision f51c1996 (diff)
Added by Mathias Brodala over 4 years ago

[FOLLOWUP][TASK] Add meaningful exceptions to new locking API

This adds dedicated exceptions to the new locking API which
vastly simplifies usage workflows.

Since the new API was not yet released, this is a non-breaking
change.

Resolves: #66411
Related: #47712
Releases: master
Change-Id: Iae44eaa121562469b64222f5837f7a48e6d9fc14
Reviewed-on: http://review.typo3.org/38683
Reviewed-by: Markus Klein <>
Tested-by: Markus Klein <>
Reviewed-by: Jigal van Hemert <>
Tested-by: Jigal van Hemert <>

History

#1 Updated by Gerrit Code Review over 6 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/20681

#2 Updated by Gerrit Code Review over 6 years ago

Patch set 2 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/20681

#3 Updated by Gerrit Code Review over 6 years ago

Patch set 3 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/20681

#4 Updated by Ernesto Baschny over 6 years ago

  • Category changed from Code Cleanup to Backend API

Will work continue on this front? Is there a concept plan or some documentation on the end goal of this refactoring?

This is more than a "Code Cleanup", it introduces a new Locking API. So it should aim to replace the current "Locker" class. So missing still is:

1) a "flock" locking mechanism
2) make it used by the Core, making sure the old "Locker" class is not used anymore
3) deprecate the Locker class

Is it realistic that we reach the goal of finishing this API before feature freeze (which would be next week but will most probably be postponed) and that we reach the goal of "replacing the usage of Locker" before the final release?

#5 Updated by Ernesto Baschny about 6 years ago

  • Target version deleted (6.2.0)

#6 Updated by Christian Kuhn almost 5 years ago

  • Status changed from Under Review to Rejected

While the work on this is highly appreciated and the pending patch was a good step into the right direction, it was pending as WIP in gerrit for a year now without anyone really working on it. The patch was abandoned for the time being. Meanwhile, a blueprint for locking evolved at http://wiki.typo3.org/Blueprints/LockingForCaches and the work here is mentioned there for anyone to pick up.

This issue here will be set to "rejected" for now, since further works needs to be aligned and decided in the blueprint, and after that realized in smaller and new issues.

#7 Updated by Markus Klein over 4 years ago

  • Status changed from Rejected to Accepted
  • Assignee changed from Daniel Hürtgen to Markus Klein
  • Target version set to 7.2 (Frontend)
  • PHP Version changed from 5.3 to 5.5
  • Complexity changed from nightmare to hard

#8 Updated by Gerrit Code Review over 4 years ago

  • Status changed from Accepted to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#9 Updated by Gerrit Code Review over 4 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#10 Updated by Gerrit Code Review over 4 years ago

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#11 Updated by Gerrit Code Review over 4 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#12 Updated by Gerrit Code Review over 4 years ago

Patch set 5 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#13 Updated by Gerrit Code Review over 4 years ago

Patch set 6 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#14 Updated by Gerrit Code Review over 4 years ago

Patch set 7 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#15 Updated by Gerrit Code Review over 4 years ago

Patch set 8 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#16 Updated by Gerrit Code Review over 4 years ago

Patch set 9 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#17 Updated by Markus Klein over 4 years ago

  • Sprint Focus set to Remote Sprint

#18 Updated by Gerrit Code Review over 4 years ago

Patch set 10 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#19 Updated by Gerrit Code Review over 4 years ago

Patch set 11 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#20 Updated by Gerrit Code Review over 4 years ago

Patch set 12 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#21 Updated by Gerrit Code Review over 4 years ago

Patch set 13 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#22 Updated by Gerrit Code Review over 4 years ago

Patch set 14 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#23 Updated by Gerrit Code Review over 4 years ago

Patch set 15 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#24 Updated by Gerrit Code Review over 4 years ago

Patch set 16 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#25 Updated by Gerrit Code Review over 4 years ago

Patch set 17 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#26 Updated by Gerrit Code Review over 4 years ago

Patch set 18 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#27 Updated by Gerrit Code Review over 4 years ago

Patch set 19 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/37700

#28 Updated by Markus Klein over 4 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 40 to 100

#29 Updated by Riccardo De Contardi about 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF