-
Notifications
You must be signed in to change notification settings - Fork 94
Description
- What versions are you using?
Oracledb 3.4.0 + Python 3.12 + django 5.2.7
-
Is it an error or a hang or a crash?
Django start gives error -
What error(s) or behavior you are seeing?
Django start fails with -
Traceback (most recent call last):
File "/python_dir/python3.12/threading.py", line 1075, in _bootstrap_inner
self.run()
File "/python_dir/python3.12/threading.py", line 1012, in run
self._target(*self._args, **self._kwargs)
File "/xyz/virtualenv/lib/python3.12/site-packages/django/utils/autoreload.py", line 64, in wrapper
fn(*args, **kwargs)
File "/xyz/virtualenv/lib/python3.12/site-packages/django/core/management/commands/runserver.py", line 137, in inner_run
self.check_migrations()
File "/xyz/virtualenv/lib/python3.12/site-packages/django/core/management/base.py", line 587, in check_migrations
executor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/migrations/executor.py", line 18, in init
self.loader = MigrationLoader(self.connection)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/migrations/loader.py", line 58, in init
self.build_graph()
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/migrations/loader.py", line 235, in build_graph
self.applied_migrations = recorder.applied_migrations()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/migrations/recorder.py", line 89, in applied_migrations
if self.has_table():
^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/migrations/recorder.py", line 63, in has_table
with self.connection.cursor() as cursor:
^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/utils/asyncio.py", line 26, in inner
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/base/base.py", line 320, in cursor
return self._cursor()
^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/base/base.py", line 296, in _cursor
self.ensure_connection()
File "/xyz/virtualenv/lib/python3.12/site-packages/django/utils/asyncio.py", line 26, in inner
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/base/base.py", line 279, in ensure_connection
self.connect()
File "/xyz/virtualenv/lib/python3.12/site-packages/django/utils/asyncio.py", line 26, in inner
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/base/base.py", line 258, in connect
self.init_connection_state()
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/oracle/base.py", line 336, in init_connection_state
cursor.execute(
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/oracle/base.py", line 630, in execute
query, params = self._fix_for_params(query, params, unify_by_values=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/oracle/base.py", line 627, in _fix_for_params
return query, self._format_params(params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/oracle/base.py", line 555, in _format_params
return {k: OracleParam(v, self, True) for k, v in params.items()}
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xyz/virtualenv/lib/python3.12/site-packages/django/db/backends/oracle/base.py", line 441, in init
elif isinstance(param, (Database.Binary, datetime.timedelta)):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: isinstance() arg 2 must be a type, a tuple of types, or a union
- Does your application call init_oracle_client()?
No, using thin client.
- Include a runnable Python script that shows the problem.
We are trying to upgrade a django project. Tried creating a sample django project with the above mentioned dependencies and it reproduced. The same works fine with oracledb 3.3.0