{"record":{"id":"d5e9dc836875689c","repo":"phalcon/cphalcon","slug":"adapter-cannot-be-opened-in-read-mode","errorCode":null,"errorMessage":"Adapter cannot be opened in read mode","messagePattern":"Adapter cannot be opened in read mode","errorType":"exception","errorClass":"Phalcon\\Logger\\Adapter\\Exceptions\\InvalidStreamMode","httpStatus":null,"severity":"error","filePath":"phalcon/Logger/Adapter/Stream.zep","lineNumber":73,"sourceCode":"     * Stream name\n     */\n    protected string name;\n\n    /**\n     * Stream constructor.\n     *\n     * @throws InvalidStreamMode\n     */\n    public function __construct(string name, array options = [])\n    {\n        var mode;\n\n        /**\n         * Mode\n         */\n        let mode = true === isset(options[\"mode\"]) ? options[\"mode\"] : \"ab\";\n        if (false !== mb_strpos(mode, \"r\")) {\n            throw new InvalidStreamMode();\n        }\n\n        let this->name = name,\n            this->mode = mode;\n    }\n\n    /**\n     * Closes the stream\n     */\n    public function close() -> bool\n    {\n        var handler;\n\n        if (this->handler !== null) {\n            let handler = this->handler,\n                this->handler = null;\n            return this->phpFclose(handler);\n        }","sourceCodeStart":55,"sourceCodeEnd":91,"githubUrl":"https://github.com/phalcon/cphalcon/blob/b7419de9cd0a8a3f48441ead84c9f8415d463e25/phalcon/Logger/Adapter/Stream.zep#L55-L91","documentation":"Error \"Adapter cannot be opened in read mode\" thrown in phalcon/cphalcon.","triggerScenarios":"Thrown at phalcon/Logger/Adapter/Stream.zep:73 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":"b7419de9cd0a8a3f48441ead84c9f8415d463e25","analyzedAt":"2026-08-21T06:21:18.811Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}