I also ran into a few problems lately, all related to file upload. For some, I have found references (eg, the 504 error assembling chunks):
- Chunk assembly error
- Slow uploads of the WebUI (only over http/2)
- Total unresponsiveness of the server (for other users/requests) while one request is finishing the upload (assembling chunks) of a big file.
- Very slow assembly of chunks.
The details of my installation are not so important here I think. Maybe one observation: It only happens frequently and reproducibly on a server set up with http2 (h2) connecting to an apache 2.4 backend also accessed over http2 (h2c), and with an internet connection of 500 MBit/s.
I have a question here in the hope that some core / files backend developer might read this:
Can you point to the right files on the front- and backend code that handle chunked uploads? I’m an experienced PHP dev, so yes, I’ve searched a bit the code, stumbling upon several probably involved classes and interfaces, but it would be super great if someone already involved could just share a quick list of the involved JS and PHP files / event model in the WebUI / DAV (chunked) Upload flow. I’d give it a look and possibly contribute fixes / ideas (I actually do have a few ideas, but not plenty of time).
Thanks in advance and Best Regards,