Intermittent Interfaceerror / database interface problem?

I’m using Oracle 19c for my database for my application which is running through WSGI on Apache.
Everything works great most of the time but every so often, I’m getting an InterfaceError “not open” which is, of course, a database interface error. As soon as I restart the application server, everything goes back to working as it was until the next InterfaceError which has been happening maybe 2 times a week during testing.
I get it if it was something that happened all the time, but happening every now and then doesn’t make any sense to me. Any ideas?

Environment:

Request Method: GET
Request URL: http://(mysite.com)/

Django Version: 3.2.6
Python Version: 3.9.6
Installed Applications:
[‘app’,
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘webdart.apps.WebdartConfig’,
‘DjangoWebProject1’,
‘django_filters’,
‘vertical_multi_columns’,
‘el_pagination’]
Installed Middleware:
[‘django.middleware.security.SecurityMiddleware’,
‘django.contrib.sessions.middleware.SessionMiddleware’,
‘django.middleware.common.CommonMiddleware’,
‘django.middleware.csrf.CsrfViewMiddleware’,
‘django.contrib.auth.middleware.AuthenticationMiddleware’,
‘django.contrib.auth.middleware.RemoteUserMiddleware’,
‘django.contrib.messages.middleware.MessageMiddleware’,
‘django.middleware.clickjacking.XFrameOptionsMiddleware’]

Traceback (most recent call last):
File “e:\python\lib\site-packages\django\contrib\auth\middleware.py”, line 56, in process_request
username = request.META[self.header]

During handling of the above exception (‘REMOTE_USER’), another exception occurred:
File “e:\python\lib\site-packages\django\contrib\sessions\backends\base.py”, line 233, in _get_session
return self._session_cache

During handling of the above exception (‘SessionStore’ object has no attribute ‘_session_cache’), another exception occurred:
File “e:\python\lib\site-packages\django\core\handlers\exception.py”, line 47, in inner
response = get_response(request)
File “e:\python\lib\site-packages\django\utils\deprecation.py”, line 116, in call
response = self.process_request(request)
File “e:\python\lib\site-packages\django\contrib\auth\middleware.py”, line 61, in process_request
if self.force_logout_if_no_header and request.user.is_authenticated:
File “e:\python\lib\site-packages\django\utils\functional.py”, line 246, in inner
self._setup()
File “e:\python\lib\site-packages\django\utils\functional.py”, line 382, in _setup
self._wrapped = self._setupfunc()
File “e:\python\lib\site-packages\django\contrib\auth\middleware.py”, line 23, in
request.user = SimpleLazyObject(lambda: get_user(request))
File “e:\python\lib\site-packages\django\contrib\auth\middleware.py”, line 11, in get_user
request.cached_user = auth.get_user(request)
File "e:\python\lib\site-packages\django\contrib\auth_init
.py", line 177, in get_user
user_id = get_user_session_key(request)
File "e:\python\lib\site-packages\django\contrib\auth_init
.py", line 60, in _get_user_session_key
return get_user_model()._meta.pk.to_python(request.session[SESSION_KEY])
File “e:\python\lib\site-packages\django\contrib\sessions\backends\base.py”, line 65, in getitem
return self._session[key]
File “e:\python\lib\site-packages\django\contrib\sessions\backends\base.py”, line 238, in _get_session
self._session_cache = self.load()
File “e:\python\lib\site-packages\django\contrib\sessions\backends\db.py”, line 43, in load
s = self._get_session_from_db()
File “e:\python\lib\site-packages\django\contrib\sessions\backends\db.py”, line 32, in _get_session_from_db
return self.model.objects.get(
File “e:\python\lib\site-packages\django\db\models\manager.py”, line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File “e:\python\lib\site-packages\django\db\models\query.py”, line 431, in get
num = len(clone)
File “e:\python\lib\site-packages\django\db\models\query.py”, line 262, in len
self._fetch_all()
File “e:\python\lib\site-packages\django\db\models\query.py”, line 1324, in _fetch_all
self._result_cache = list(self._iterable_class(self))
File “e:\python\lib\site-packages\django\db\models\query.py”, line 51, in iter
results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
File “e:\python\lib\site-packages\django\db\models\sql\compiler.py”, line 1211, in execute_sql
cursor.close()
File “e:\python\lib\site-packages\django\db\backends\oracle\base.py”, line 542, in close
self.cursor.close()

Exception Type: InterfaceError at /
Exception Value: not open