Commit Graph

14 Commits

Author SHA1 Message Date
Morris Jobke 243516d785
Fix UniqueConstraintViolationException while insert into oc_file_locks
* fixes #9305 by not being prone to the race condition in insertIfNotExists
* fixes #6899 by not using a query that can result in a deadlock
* replaces the insertIfNotExists call with an insert which is wrapped into a try-catch block
* followup to #12371

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-13 14:05:16 +01:00
Robin Appelman 1fa6115779
prevent lock values from going negative with memcache backend
This can be caused by the code releasing more locks then it acquires,
once the lock value becomes negative it's likely that it will never be able
to change into an exclusive lock again.

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-07-10 17:50:45 +02:00
Robin Appelman a070c1177a
Log more info about locking conflicts for memcache locking backends
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-04 13:35:26 +02:00
Morris Jobke 0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Lukas Reschke 3d2600b039
Add Phan plugin to check for SQL injections
This adds a phan plugin which checks for SQL injections on code using our QueryBuilder, while it isn't perfect it should already catch most potential issues.

As always, static analysis will sometimes have false positives and this is also here the case. So in some cases the analyzer just doesn't know if something is potential user input or not, thus I had to add some `@suppress SqlInjectionChecker` in front of those potential injections.

The Phan plugin hasn't the most awesome code but it works and I also added a file with test cases.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-20 22:48:13 +02:00
Joas Schilling 0215b004da
Update with robin 2016-07-21 18:13:58 +02:00
Joas Schilling ba87db3fcc
Fix others 2016-07-21 18:13:57 +02:00
Lukas Reschke aba539703c
Update license headers 2016-05-26 19:57:24 +02:00
Thomas Müller 06293783e0 Merge pull request #24387 from owncloud/locking-mark-reload-free
free up memory when releasing the last shared lock
2016-05-03 12:03:41 +02:00
Robin Appelman 9677681a37 free up memory when releasing the last shared lock 2016-05-02 14:18:46 +02:00
Robin Appelman 49ad0fcfa9 optimize releaselock for memcache based locking backends 2016-04-29 12:54:33 +02:00
Roeland Jago Douma 7b3191705c
Let the querybuilder convert 2016-04-14 11:32:34 +02:00
Robin Appelman 68746e1bdb
chunk the cleaning up of shared locks 2016-04-14 11:32:34 +02:00
Roeland Jago Douma 86e757d2b3
Move \OC\Lock to PSR-4 2016-04-14 08:28:16 +02:00