-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
[Bug]: + (plus) character in file name causes server 500 error WITH Q&D FIX #40943
Comments
AD: I use AWS-S3 for data storage, I do not know it that is important.. This is quite a big problem.. I am unable to edit/rename/remove/move the file with a '+' in it. Not even removing the '+' manually in |
S3 as Primary Storage or as an External Storage mount? (sounds like Primary Storage since you mention checking |
Also can you provide the associated log entries from your |
AWS-S3 is set as primary privacy corrected log entry:
|
I've taken a quick look at the links you provided. (thanks) But, I use AWS-S3 so I'dd expect this not to be an OS-filesystem issue, but a bug in handling the '+' sign in the code somewhere.. I've done a search in my |
updated to 25.10.12, no change |
upgraded my test environment to 26.0.7, no change.. Might this somehow be related to my AWS-S3 setup? I tried other versions, PHP 7.4 is not allowed, PHP 8.0 and PHP 8.1 have the same errors.. on the console of Chrome see this with an image (attempting to view):
|
Could it be that I need to or can force a character set in the apache vhost? Or something in the .htaccess to force something? "It smells like a character (set) issue" |
in the access-log I see a succesfull PROPFIND:
Could there be something wrong in stat.js or dav.js? (I am unable to find those files?) |
I could build a script to remove those 'plusses' from the database.. since I'm using AWS-S3 that's the only spot where those 'plusses' are.. Why can't I remove the 'plusses' in the database? in Or is update
I can access, rename/move etc the file again It's not pretty but I can run a script each night performing this rename.. that at least prevents those zombie files.. I do hope a better solution can be provided |
The plot thinkens.. (I was working on a script...) when I have a file with NO space in front or after of the '+' there is no problem! But when there is a space before or after it, the problem arises! @solracsf could you verify? |
No problem with |
Thanks for checking @solracsf , much appreciated.. the digging continues.. |
This bug is getting more troublesome.. So I decided to force a rename from '+' to '&' in the files.. When looking at the 'oc_filecache' structure, the path_hash is an 'md5' of the 'path' variable (including the file name). renaming (also the 'name' column) and updating the md5 does the trick on the server side.. BUT synchronization towards the client is "spotty at best".. is there any way to trigger a re-sync of those files? I've also looked at Sabre/DAV to use renaming.. but this problem is over multiple users and I don;t have all the passwords.. and I didn't find a "super user option".. Does anyone have an idea? All help is welcome.. |
I’ve done some more searching and found this in ‘owncloud’ that might be related: owncloud/core#34600 Reading that issue got me searching in a different way, and I found this closed issue: there is a suggestion it might be fixed with: |
FIXED IT! Well.. "Quick and Dirty" that is... As it turns out, the root cause is the same as it was with spaces!! check: #37852 And my "Q&D fix" there also fixes this problem! So there needs to be an "next level fix" done like https://github.com/php/php-src/blob/PHP-8.1/NEWS#L38L63 But then to fix the "+" like they fixed the "space"... grmpf.. Might it be a good idea to include a variant of my "Q&D" in Nextcloud? But thank the almighty that I now finally am rid of this nasty bug.. For reference, this bug (all with PHP 8.1.18+) is present in 25.x, 26.x and 27.x (tested them all..) PS: I am running PHP 8.1.27 |
@skjnldsv thanks for closing this bug report, as the bug had been resolved in PHP! (see the closed bug report above) |
Bug description
When one has a file with a "plus character" in it (like "image +error.jpg" of "doc +error.docx") and one wants to open/access it, it gives an ERROR 500 (documents) of with an image the "loading circle" keeps turning..
AD: when an image has [a-z][space][plus][a-z] the loading-symbol keeps turning, renaming via the web interface isn't possible anymore.. also renaming via the desktop only works locally, it does not sync!!
Steps to reproduce
Expected behavior
allow files with a '+' in it?
Installation method
Community Web installer on a VPS or web space
Nextcloud Server version
25
Operating system
RHEL/CentOS
PHP engine version
PHP 8.0
Web server
Apache (supported)
Database engine version
MariaDB
Is this bug present after an update or on a fresh install?
Updated from a MINOR version (ex. 22.1 to 22.2)
Are you using the Nextcloud Server Encryption module?
None
What user-backends are you using?
Configuration report
No response
List of activated Apps
No response
Nextcloud Signing status
No response
Nextcloud Logs
No response
Additional info
I am now at version 25.0.10 I will update to 25.0.12 this night (local time) If that solves the problem I'll mention it here
The text was updated successfully, but these errors were encountered: