Repository navigation
Conversation
…rable Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Mario Alfonso Pym Mejía <pymm@hitss.com>
|
What are "large federated shares" and "a big share, or a remote that delays the response by 15 s" supposed to mean? |
You're right, that part of the description is wrong. It isn't about the size of the share: the server only requests the root of the share (depth 0), so the share size doesn't matter. The issue happens when our instances are under heavy load (high traffic): the remote takes longer to answer |
Summary
Requests sent by
OCA\Files_Sharing\External\Storageto remote servers, including theshareinforequest and the reachability checks (e.g. againststatus.phporocm-provider), rely on a hardcoded 10-second timeout. When the remote server is under heavy load, it may take longer than 10 seconds to respond toshareinfo, even though only the root of the share is requested (depth 0). The request then fails withcURL error 28and the share is reported as unavailable, with no way to adjust the limit (a similar limitation was reported in #29941).This change introduces the
sharing.federation.request_timeoutsystem configuration option (in seconds, defaulting to 10), which applies to bothtimeoutandconnect_timeoutfor these requests, and documents it inconfig.sample.php. The default value preserves the existing behavior. WebDAV requests for the same storage are unaffected and continue to usedavstorage.request_timeout.How to test
/index.php/apps/files_sharing/shareinfotakes more than 10 seconds to answer (e.g. a remote that delays the response by 15 s, such as a sleep(15) added to ShareInfoController::info() for testing).getShareInfo()fails after 10 s withcURL error 28: Operation timed out after 10000 milliseconds.occ config:system:set sharing.federation.request_timeout --type=integer --value=20and open it again.Unit test:
apps/files_sharing/tests/ExternalStorageTest.php.Checklist
3. to review, feature component)stable32)AI (if applicable)