-
Notifications
You must be signed in to change notification settings - Fork 113
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Improve tracing * Lock the node before changing the grants * log cache diff on sync Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * WIP debugging * Validae if-unmodified-since before finishing the upload * WIP * etag based cache invalidation Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * providercache seems solid now Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * log diffs as before ind after Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * Remove dead code * Fix concurrent map writes * Return the new etag after upload * Lock on the provider level. fixes concurrent map accesses * Retry more often * Update in-memory etag with the one from the Upload response * Improve logging * ensure etag did not change during reading blob metadata and download Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * move mtime to metadata Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * openlock before reading metadata Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * fix etag calculation Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * drop diff, remove unused variable Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * revert info level log from gateway storageprovider Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * reduce logging in providercache Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * crank up retries when adding shares Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * drop unused mtime in jsoncs3 Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * bring back providercache persist debug log Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * update providercache tests Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * update sharecache tests Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * make providercache logging more resilient Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * update jsoncs3 tests Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * update mock Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * add changelog Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * AddGrant must not fall back to UpdateGrant when a grant exists to prevent deadlock Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * always return file handle Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * use locks when copying revision metadata Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * Fix header name * Apply providercache fixes to sharecache as well * fix restoring revision mtime Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * make RemoveGrant possible with existing lock Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * List created shares concurrently * Use a sync.Map for the provider map and use space level locking again * Also use a sync map for the spaces map * Cleanup * Fix unit tests * Fix unit tests * Fix linter issues * update space root grant instead of always adding Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * fix unreachable file handle Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * fix space grant updates Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * remove expired shares without checking permissions Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * ignore expired grants when assembling permissions Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * note idea how to aggregate persist requests in jsoncs3 Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * no need to propagate share expiry as an etag change Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * Update changelog/unreleased/grant-locking.md Co-authored-by: Michael Barz <michael.barz@zeitgestalten.eu> * retry providercache removes more often Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * only retry on recoverable errors Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * unify body close Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * dedupliacate metadata client download code Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> * do not magically retry downloads Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> --------- Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de> Co-authored-by: André Duffeck <andre.duffeck@firondu.de> Co-authored-by: Michael Barz <michael.barz@zeitgestalten.eu>
- Loading branch information
1 parent
e3a2be9
commit 010c817
Showing
45 changed files
with
1,471 additions
and
696 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
Bugfix: fix jsoncs3 atomic persistence | ||
|
||
The jsoncs3 share manager now uses etags instead of mtimes to determine when metadata needs to be updated. | ||
As a precondtition we had to change decomposedfs as well: to consistently calculate the etag for the file content | ||
we now store the mtime in the metadata and use the metadata lock for atomicity. | ||
|
||
https://github.com/cs3org/reva/pull/4117 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.