{"record":{"id":"3007398c9b7ad8fe","repo":"ruvnet/RuView","slug":"redis-connection-failed-and-is-required-e","errorCode":null,"errorMessage":"Redis connection failed and is required: {e}","messagePattern":"Redis connection failed and is required: (.+?)","errorType":"exception","errorClass":"DatabaseConnectionError","httpStatus":null,"severity":"error","filePath":"archive/v1/src/database/connection.py","lineNumber":244,"sourceCode":"                password=self.settings.redis_password,\n                encoding=\"utf-8\",\n                decode_responses=True,\n                max_connections=self.settings.redis_max_connections,\n                retry_on_timeout=True,\n                socket_timeout=self.settings.redis_socket_timeout,\n                socket_connect_timeout=self.settings.redis_connect_timeout,\n            )\n            \n            # Test Redis connection\n            await self._test_redis_connection()\n            \n            logger.info(\"Redis connection initialized\")\n            \n        except Exception as e:\n            logger.error(f\"Failed to initialize Redis: {e}\")\n            \n            if self.settings.redis_required:\n                raise DatabaseConnectionError(f\"Redis connection failed and is required: {e}\")\n            elif self.settings.enable_redis_failsafe:\n                logger.warning(\"Redis initialization failed, continuing without Redis (failsafe enabled)\")\n                self._redis_client = None\n            else:\n                logger.warning(\"Redis initialization failed but not required, continuing without Redis\")\n                self._redis_client = None\n    \n    def _setup_connection_events(self):\n        \"\"\"Setup database connection event listeners.\"\"\"\n        \n        @event.listens_for(self._sync_engine, \"connect\")\n        def set_sqlite_pragma(dbapi_connection, connection_record):\n            \"\"\"Set database-specific settings on connection.\"\"\"\n            if \"sqlite\" in str(self._sync_engine.url):\n                cursor = dbapi_connection.cursor()\n                cursor.execute(\"PRAGMA foreign_keys=ON\")\n                cursor.close()\n        ","sourceCodeStart":226,"sourceCodeEnd":262,"githubUrl":"https://github.com/ruvnet/RuView/blob/4685618388a5e49fad5b3005806f3bdd6a7c25c3/archive/v1/src/database/connection.py#L226-L262","documentation":"Error \"Redis connection failed and is required: {e}\" thrown in ruvnet/RuView.","triggerScenarios":"Thrown at archive/v1/src/database/connection.py:244 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":"4685618388a5e49fad5b3005806f3bdd6a7c25c3","analyzedAt":"2026-08-16T06:09:40.886Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}