{"record":{"id":"a6136b9fc0facaea","repo":"phacility/phabricator","slug":"storage-engine-s-executed-s-but-did-not-return","errorCode":null,"errorMessage":"Storage engine '%s' executed %s but did not return a valid handle ('%s') to the data: it must be nonempty and no longer than 255 characters.","messagePattern":"Storage engine '(.+?)' executed (.+?) but did not return a valid handle \\('(.+?)'\\) to the data: it must be nonempty and no longer than 255 characters\\.","errorType":"exception","errorClass":"PhabricatorFileStorageConfigurationException","httpStatus":null,"severity":"error","filePath":"src/applications/files/storage/PhabricatorFile.php","lineNumber":557,"sourceCode":"    PhabricatorFileStorageEngine $engine,\n    $data,\n    array $params) {\n\n    $engine_class = get_class($engine);\n\n    $format = $this->newStorageFormat();\n\n    $data_iterator = array($data);\n    $formatted_iterator = $format->newWriteIterator($data_iterator);\n    $formatted_data = $this->loadDataFromIterator($formatted_iterator);\n\n    $integrity_hash = $engine->newIntegrityHash($formatted_data, $format);\n\n    $data_handle = $engine->writeFile($formatted_data, $params);\n\n    if (!$data_handle || strlen($data_handle) > 255) {\n      // This indicates an improperly implemented storage engine.\n      throw new PhabricatorFileStorageConfigurationException(\n        pht(\n          \"Storage engine '%s' executed %s but did not return a valid \".\n          \"handle ('%s') to the data: it must be nonempty and no longer \".\n          \"than 255 characters.\",\n          $engine_class,\n          'writeFile()',\n          $data_handle));\n    }\n\n    $engine_identifier = $engine->getEngineIdentifier();\n    if (!$engine_identifier || strlen($engine_identifier) > 32) {\n      throw new PhabricatorFileStorageConfigurationException(\n        pht(\n          \"Storage engine '%s' returned an improper engine identifier '{%s}': \".\n          \"it must be nonempty and no longer than 32 characters.\",\n          $engine_class,\n          $engine_identifier));\n    }","sourceCodeStart":539,"sourceCodeEnd":575,"githubUrl":"https://github.com/phacility/phabricator/blob/5720a38cfe95b00ca4be5016dd0d2f3195f4fa04/src/applications/files/storage/PhabricatorFile.php#L539-L575","documentation":"Error \"Storage engine '%s' executed %s but did not return a valid handle ('%s') to the data: it must be nonempty and no longer than 255 characters.\" thrown in phacility/phabricator.","triggerScenarios":"Thrown at src/applications/files/storage/PhabricatorFile.php:557 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5720a38cfe95b00ca4be5016dd0d2f3195f4fa04","analyzedAt":"2026-08-21T05:07:25.672Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}