Skip to content

Commit e7b6c8f

Browse files
fix: improve graceful degradation when psycopg2 not available
1 parent 744bd52 commit e7b6c8f

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

quantumpytho/modules/database.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,10 @@ def __init__(self, config: Optional[DatabaseConfig] = None):
9292

9393
def _initialize_pool(self) -> None:
9494
"""Initialize connection pool."""
95+
if not PSYCOPG2_AVAILABLE:
96+
print("[NeonDB] psycopg2 not available, skipping pool initialization")
97+
return
98+
9599
try:
96100
self._connection_pool = pool.SimpleConnectionPool(
97101
minconn=self.config.pool_min,
@@ -244,6 +248,14 @@ def get_database() -> NeonDatabase:
244248
"""
245249
global _db_instance
246250
if _db_instance is None:
251+
if not PSYCOPG2_AVAILABLE:
252+
print("[NeonDB] psycopg2 not available (install with: pip install psycopg2-binary)")
253+
# Create a disabled instance
254+
_db_instance = NeonDatabase.__new__(NeonDatabase)
255+
_db_instance.config = DatabaseConfig()
256+
_db_instance._connection_pool = None
257+
return _db_instance
258+
247259
config = DatabaseConfig()
248260
if config.is_configured:
249261
_db_instance = NeonDatabase(config)

0 commit comments

Comments
 (0)