summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2021-02-09 20:29:57 +0000
committerGerrit Code Review <gerrit@ci3.zzzcomputing.com>2021-02-09 20:29:57 +0000
commit1e75c189da721395bc8c2d899c722a5b9a170404 (patch)
tree63262558791ce67955da55a4c1f9caf0e1cf08b5 /lib/sqlalchemy
parent6dad598ea49aa7442ef18545a083779e42c278f8 (diff)
parent23e088bccff02f18e4a27ef9dfc656c814695525 (diff)
downloadsqlalchemy-1e75c189da721395bc8c2d899c722a5b9a170404.tar.gz
Merge "Detect non async driver on engine creation"
Diffstat (limited to 'lib/sqlalchemy')
-rw-r--r--lib/sqlalchemy/exc.py2
-rw-r--r--lib/sqlalchemy/ext/asyncio/engine.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/lib/sqlalchemy/exc.py b/lib/sqlalchemy/exc.py
index 289b8dfab..a0a86826d 100644
--- a/lib/sqlalchemy/exc.py
+++ b/lib/sqlalchemy/exc.py
@@ -287,7 +287,7 @@ class NoReferenceError(InvalidRequestError):
class AwaitRequired(InvalidRequestError):
"""Error raised by the async greenlet spawn if no async operation
- was awaited when it required one
+ was awaited when it required one.
"""
diff --git a/lib/sqlalchemy/ext/asyncio/engine.py b/lib/sqlalchemy/ext/asyncio/engine.py
index aa7e60dfb..db95ab371 100644
--- a/lib/sqlalchemy/ext/asyncio/engine.py
+++ b/lib/sqlalchemy/ext/asyncio/engine.py
@@ -527,6 +527,11 @@ class AsyncEngine(ProxyComparable, AsyncConnectable):
await self.conn.close()
def __init__(self, sync_engine: Engine):
+ if not sync_engine.dialect.is_async:
+ raise exc.InvalidRequestError(
+ "The asyncio extension requires an async driver to be used. "
+ f"The loaded {sync_engine.dialect.driver!r} is not async."
+ )
self.sync_engine = self._proxied = sync_engine
def begin(self):