-
Notifications
You must be signed in to change notification settings - Fork 650
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upload via WebDAV on macOS fails silently, creates zero byte files #4582
Comments
cc @artonge I thought this was fixed in nextcloud/server#43129? Apparently some other people are reporting as well that it doesnt work: nextcloud/server#43047 (comment) |
AIO uses Nginx, right? The PR only fix the issue for Apache. I guess we need a Nginx equivalent. |
No, AIO uses Apache internally. That is why it should work in theory. However apparently it doesnt work... @philwo do you have a reverse proxy in front of AIO? |
Thanks for the quick reply! @szaimen No, I'm using pretty much a default setup of Nextcloud AIO on this VM, without a reverse proxy. The VM also does nothing else and has direct internet access via IPv4 and IPv6. For reference, here's some hopefully helpful output to confirm that:
I was also curious whether maybe something prevents the changes in the The
And the
|
Mhm.. it looks like
|
I cannot tell but shouldn't if I understand this correctly... |
Hi @philwo I just tested with Cyberduck on my test instance and cannot reproduce this issue. So at least for cyberduck it seems to be fixed. Can you please try to revert this PR by settings this value to false: all-in-one/php/containers.json Line 61 in bab11ed
|
I can confirm that reverting https://github.com/nextcloud/all-in-one/pull/4323/files makes both curl and macOS Finder work fine immediately :) |
By the way, the trick with setting Unfortunately (although it could also be seen as a safety feature?), when I stop and start the containers via the AIO interface, any changed files get overwritten again. I think this is because all-in-one/php/src/Controller/DockerController.php Lines 60 to 67 in a1037ba
However, for this test it was no problem, as I could just run |
Ah, I forgot to mention, this is the full command-line how to reproduce this issue with curl (I also confirmed it with the latest curl version built from source to ensure it's not just an issue with the Apple version): dd if=/dev/urandom of=random.4MB bs=1M count=4
curl \
-v \
--user "admin:hunter2" \
-H "Transfer-Encoding: chunked" \
--data-binary "@random.4MB" \
-X PUT \
"https://nc.example.com/remote.php/dav/files/admin/random.4MB.curl" |
Thanks a lot for your help on this @philwo! :) Due to you I found a fix in nextcloud/server#45035 |
This is now fixed with v8.2.1 Beta. Testing and feedback is welcome! See https://github.com/nextcloud/all-in-one#how-to-switch-the-channel |
Steps to reproduce
Expected behavior
The file gets stored on Nextcloud correctly.
Actual behavior
The upload completes successfully from macOS's perspective, but only an empty, zero byte file is stored in Nextcloud.
Host OS
Ubuntu 22.04.4 LTS
Nextcloud AIO version
v8.2.0
Current channel
latest
Other valuable info
Happens with Nextcloud v28.0.4 as well as the just released Nextcloud v29.0.0.
I checked the diff between v7.12.1 and v8.2.0 and believe the culprit might be this change: #4323 - the idea behind it and the upstream change seems good, but for some reason it's not working (maybe due to something AIO-specific, considering that no one has complained on the upstream PR?).
This is causing data loss for me at the moment, especially because it doesn't result in a user visible error - the Finder and other apps saving files to that mounted WebDAV share believe that they did so successfully, so the user might not notice that their files have never been saved.
I will try to revert this change locally in my configuration as a workaround for now, will report back whether that fixed it.
The text was updated successfully, but these errors were encountered: