Closed glpatcern closed 2 years ago
This pull request introduces 1 alert when merging c31bee48b46b2053679b4fa5736734ede504b098 into 26b6aa5d6dc3cae76191b454145062c4c4993b57 - view on LGTM.com
new alerts:
This pull request fixes 1 alert when merging 114beb95e8b4505d23c1b02608d7ba66dadfd0d2 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 97f126fdb3815116463522d3754d820fff619e92 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging a25cba6e0891ead62d34761b34c4f623a4225675 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 16ff7548df9e5f42feec16274bcd544ded7cd0e0 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging e30440f0f43c8769c859f12ed9fc857c874180e5 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 5452088cbfc085ca3d06783946fbee5758bb0cd1 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 0d4aa28b94d30f07b94fa64bf117b70073a137c0 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging a12b247b49b77dd18ddaa781ea75d42dcec0155a into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging f67481feeb4789eb5d84bdffb0064693eaa5c479 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging c074ec171afae17d69d5a0fdf2052041df3577b6 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 46aec7a95eeb1c38c00fc22821d742206057c338 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 1 alert when merging 9126a3009156152af5e11f24a79466455db73209 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 9cfde36a71b48b813b757f4912170aafece9f025 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 537642a3a0c71c41d9e4cacc5eb72063ecb1dca6 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 63c815e1a1c96ca9b34b8f2d50f9ed57f71bb91a into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging bfba8d025363211c62db74bc09b084073fa26585 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request introduces 1 alert and fixes 2 when merging 0ac5ad9e4305abd08843956760313f24d7d1def2 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
new alerts:
fixed alerts:
This pull request fixes 2 alerts when merging de7fc2914f75e952f8dfc4807a7011c3f77026d5 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 8c7c0d478b4f3fa514baa31cb6a31cc86999fa98 into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging bd7da5294e3a5e0299f08b16885b510e11f3746a into 5e980071a6cc4a3b965b29fa6026824de817e1f6 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging d59454a08b0e802b50897f0b9332ddf58759c5dd into 447abc116695f6583fc120075c1da8a877404ac4 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 3f0cd6415b866c63d306c0d22deabf5612eb5571 into 447abc116695f6583fc120075c1da8a877404ac4 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging e2d91be6db5dc6e440b3fde1d3c743af29ae4d0b into c2b38f7db1b83f0cc7053b7264780768c32cf13b - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging fb781e6d8b252b2d6b1d6be93143e3b0ae31bbad into c2b38f7db1b83f0cc7053b7264780768c32cf13b - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 9d33b51913c2c8a39a6676b4af676db0f88c18f8 into c2b38f7db1b83f0cc7053b7264780768c32cf13b - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 83373fc15f54defbf90f04384cf19c1871a88b1b into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 8b9b8acb547facb4ea9e3c494888484008aa3880 into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 039a8edbf555a51fb9123c4bcac7784556380a93 into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 859024d51fb52e4d5756934c0616f52bb99f9449 into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging c7a6f6605837c0cb447872d8caae171f4fc9b11e into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging a8ba06470166a778ce00b5e1a6458b917fa3912a into 1e1882393fcd307e791d23a047563cccd6a67269 - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging b88e5b53f149f2a75baf1dc49d145fcd4b2a4e48 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 3317ff474a4ebcf1a7ac548b236738ebf0cf6495 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request introduces 2 alerts and fixes 2 when merging a8f0cc9b556cf033be0f6ee86e6a110b43f86a99 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
new alerts:
fixed alerts:
This pull request fixes 2 alerts when merging f16cd2da6df1ca0336ad925c6d0e46fa7119d180 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging ff02286b76bcbab1381854ac3a5821286edbfed1 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging d65f70ff8215fe2a6e12b7f3627ce24380fe543d into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging dbad9db3763a7185a055d36fa9e2b1f15b46fa93 into a03749fd807c3e6cf44032ff972f8eccacca6f8e - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 3c1ea632d4ee4bd615e3421530ad6c84d6c8276c into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging c9cdcc505b8d0cc051c3bd8b8ec0987875eedd20 into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 5f0030b25a518d510433e8d939ed79be560db5cb into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
@wkloucek the code is pretty much ready and works with xrootd, I'm going to start now testing it with the CS3 APIs and the branch developed by @gmgigi96 to implement locking on eos. If you want to have a look, the main highlights are:
lockid
argument. This is not enforced anywhere but we expect to have Reva enforce it in the future (cf. discussions in cs3org/cs3apis#162 with @butonic). Therefore the header X-Reva-LockId
is tentative and open for suggestions/changes.SetLock
is protected against race conditions with itself, but the whole wopiserver logic does suffer (as it did - so not a regression) from a race condition in the following case:
webconflict
files, a conflictpath
can be configured as a target location: typically for CERN we'd use the user's home path. Those webconflict
files ought not to be created any longer once the lock is fully enforced by Reva; yet in our case as users may access the storage via direct mount (outside of Reva), it is good to keep the protection and this logic around it.This pull request fixes 2 alerts when merging dcff49ed13b807edd426f822e1d5ba1b28ca308e into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 6929de824df53b6352bec77ed291335eaebb4d06 into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 13e559ce819bd64fba4b71f268aaab64f54ba64c into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging d8f5d6dd3af2d625d00e96c026a467ba9a64841c into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging bbc57e1a044b7465b163d6e68f4e7ca5992a1cf5 into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 1b1983e951b5645ed9cc8dec504da37c84dbfd21 into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This pull request fixes 2 alerts when merging 2ba5e8f6710eb959a9c87c7eaa99ba3d21fc9700 into bb2286721cb63d2e5944fdeffe3e257ff602f72a - view on LGTM.com
fixed alerts:
This PR introduces a lock API in the storage interfaces and uses it throughout the WOPI logic instead of directly creating lock files.
The lock API is implemented in the xrootd and local interfaces. ~Once https://github.com/cs3org/cs3apis/pull/160 is merged and implemented in Reva, the cs3iface will also be implemented.~ Edit: this was tested in CERNBox QA.
Along with this enhancement, all cases of failures or permission issues when saving a file have been identified and an attempt is made to save a copy to a configured local storage in order to ease later recovery by service operations. The same process is performed by the bridge extension: this fixes https://github.com/cs3org/wopiserver/issues/39.
Highlights of the implementation:
conflictpath
can be configured as a target location: typically for CERN we'd use the user's home path. Those webconflict files ought not to be created any longer once the lock is fully enforced by Reva; yet as users may access the storage via direct mount (outside of Reva), we keep the protection and this logic around it.Concerning the format of the lock-id payload, we made an attempt to ensure compatibility with WebDAV locks as follows:
opaquelocktoken: UUID [Extension]
whereExtension
=path
, andpath
can actually be anything.opaquelocktoken:hardcoded_uuid base64-encoded_wopi_lock
.This approach allows the WOPI server to uniquely recognize the WOPI locks from anything else as the [hardcoded] UUID would be its signature. Yet, this implementation may change in the future should this format not be suitable for some reasons or should the WebDAV compatibility be ineffective after all.