I tried to upload a 4.5GB file in new docman (with the web UI, dn'd) on a remote server. The upload went (apparently) well but the progress bar went to 100% and stopped there (progress still shown).
Under the hood there was a PHP fatal error:
2019-02-14T09:03:06+01:00 [9315] [error] Caught exception: SQLSTATE[HY000]: General error: 2006 MySQL server has gone away:
#0 /usr/share/tuleap/src/vendor/paragonie/easydb/src/EasyDB.php(1215): PDO->beginTransaction()
#1 /usr/share/tuleap/src/vendor/paragonie/easydb/src/EasyDB.php(1117): ParagonIE\EasyDB\EasyDB->beginTransaction()
#2 /usr/share/tuleap/src/common/DB/DataAccessObject.php(67): ParagonIE\EasyDB\EasyDB->tryFlatTransaction(Object(Closure))
#3 /usr/share/tuleap/plugins/docman/include/Upload/DocumentUploadFinisher.php(194): Tuleap\DB\DataAccessObject->wrapAtomicOperations(Object(
Closure))
#4 /usr/share/tuleap/plugins/docman/include/Upload/DocumentUploadFinisher.php(108): Tuleap\Docman\Upload\DocumentUploadFinisher->createDocum
ent('/var/tmp/docman...', 1286)
#5 /usr/share/tuleap/plugins/docman/include/Tus/TusServer.php(184): Tuleap\Docman\Upload\DocumentUploadFinisher->finishUpload(Object(Tuleap\
Docman\Upload\DocumentBeingUploadedInformation))
#6 /usr/share/tuleap/plugins/docman/include/Tus/TusServer.php(69): Tuleap\Docman\Tus\TusServer->processPatch(Object(GuzzleHttp\Psr7\ServerRe
quest), Object(Tuleap\Docman\Upload\DocumentBeingUploadedInformation))
#7 /usr/share/tuleap/plugins/docman/include/Upload/FileUploadDispatcher.php(50): Tuleap\Docman\Tus\TusServer->handle(Object(GuzzleHttp\Psr7\
ServerRequest))
#8 /usr/share/tuleap/src/common/REST/TuleapRESTCORSMiddleware.php(32): Tuleap\Docman\Upload\FileUploadDispatcher->handle(Object(GuzzleHttp\P
sr7\ServerRequest))
#9 /usr/share/tuleap/plugins/docman/include/Upload/FileUploadDispatcher.php(53): Tuleap\REST\TuleapRESTCORSMiddleware->process(Object(Guzzle
Http\Psr7\ServerRequest), Object(Tuleap\Docman\Upload\FileUploadDispatcher))
#10 /usr/share/tuleap/plugins/docman/include/Tus/TusCORSMiddleware.php(32): Tuleap\Docman\Upload\FileUploadDispatcher->handle(Object(GuzzleH
ttp\Psr7\ServerRequest))
#11 /usr/share/tuleap/plugins/docman/include/Upload/FileUploadDispatcher.php(53): Tuleap\Docman\Tus\TusCORSMiddleware->process(Object(Guzzle
Http\Psr7\ServerRequest), Object(Tuleap\Docman\Upload\FileUploadDispatcher))
#12 /usr/share/tuleap/plugins/docman/include/Upload/FileUploadController.php(82): Tuleap\Docman\Upload\FileUploadDispatcher->handle(Object(G
uzzleHttp\Psr7\ServerRequest))
#13 /usr/share/tuleap/src/common/Request/FrontRouter.php(209): Tuleap\Docman\Upload\FileUploadController->process(Object(HTTPRequest), Objec
t(FlamingParrot_Theme), Array)
#14 /usr/share/tuleap/src/common/Request/FrontRouter.php(92): Tuleap\Request\FrontRouter->routeHandler(Object(HTTPRequest), Object(Tuleap\Do
cman\Upload\FileUploadController), Array)
#15 /usr/share/tuleap/src/www/index.php(46): Tuleap\Request\FrontRouter->route(Object(HTTPRequest))
#16 {main}
2 points:
- The backend should not fail
- The front end should have displayed an error
After the error, I reloaded the page and tried again the dn'd. The upload progress bar showed a 100% immediatly and continued to show that while the error console reported a 404 error on one of the resources.