Closed AmrKhaledNowahy closed 3 years ago
Hi @AmrKhaledNowahy Thank you for considering using pylightxl. We’ll take a look at this issue this week. Thanks for posting it.
@AmrKhaledNowahy sorry but it is unclear as to where pylightxl has an issue in your Traceback. Can you help us better understand how this error came about?
closing for now due to inactivity
Pylightxl Version: 1.55 Python Version: 3.8
Summary of Bug/Feature: Throws RecursionError: maximum recursion depth exceeded while calling a Python object
Traceback: j5a2q [2021-06-06 17:51:48,991] [ERROR] file_upload_views.post : FileUpload exception. j5a2q Traceback (most recent call last): j5a2q File "/home/app/web/api/all_views/file_upload_views.py", line 72, in post j5a2q file_object = File.objects.create(data) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/manager.py", line 82, in manager_method j5a2q return getattr(self.get_queryset(), name)(*args, *kwargs) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/query.py", line 433, in create j5a2q obj.save(force_insert=True, using=self.db) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 748, in save j5a2q self.save_base(using=using, force_insert=force_insert, j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 785, in save_base j5a2q updated = self._save_table( j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 890, in _save_table j5a2q results = self._do_insert(cls._base_manager, using, fields, returning_fields, raw) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 927, in _do_insert j5a2q return manager._insert( j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/manager.py", line 82, in manager_method j5a2q return getattr(self.get_queryset(), name)(args, kwargs) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/query.py", line 1204, in _insert j5a2q return query.get_compiler(using=using).execute_sql(returning_fields) j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1393, in execute_sql j5a2q for sql, params in self.as_sql(): j5a2q File "/usr/local/lib/python3.8/site-packages/sql_server/pyodbc/compiler.py", line 434, in as_sql j5a2q value_rows = [ j5a2q File "/usr/local/lib/python3.8/site-packages/sql_server/pyodbc/compiler.py", line 435, in
j5a2q [self.prepare_value(field, self.pre_save_val(field, obj)) for field in fields]
j5a2q File "/usr/local/lib/python3.8/site-packages/sql_server/pyodbc/compiler.py", line 435, in
j5a2q [self.prepare_value(field, self.pre_save_val(field, obj)) for field in fields]
j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1288, in pre_save_val
j5a2q return field.pre_save(obj, add=True)
j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/fields/files.py", line 288, in pre_save
j5a2q file.save(file.name, file.file, save=False)
j5a2q File "/usr/local/lib/python3.8/site-packages/django/db/models/fields/files.py", line 87, in save
j5a2q self.name = self.storage.save(name, content, max_length=self.field.max_length)
j5a2q File "/usr/local/lib/python3.8/site-packages/django/core/files/storage.py", line 52, in save
j5a2q return self._save(name, content)
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 130, in _save
j5a2q self._mkdir(dirname)
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 115, in _mkdir
j5a2q self._mkdir(parent)
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 115, in _mkdir
j5a2q self._mkdir(parent)
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 115, in _mkdir
j5a2q self._mkdir(parent)
j5a2q [Previous line repeated 904 more times]
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 114, in _mkdir
j5a2q if not self.exists(parent):
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 151, in exists
j5a2q self.sftp.stat(self._remote_path(name))
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 87, in sftp
j5a2q self._connect()
j5a2q File "/usr/local/lib/python3.8/site-packages/storages/backends/sftpstorage.py", line 67, in _connect
j5a2q self._ssh.connect(self._host, *self._params)
j5a2q File "/usr/local/lib/python3.8/site-packages/paramiko/client.py", line 340, in connect
j5a2q to_try = list(self._families_and_addresses(hostname, port))
j5a2q File "/usr/local/lib/python3.8/site-packages/paramiko/client.py", line 203, in _families_and_addresses
j5a2q addrinfos = socket.getaddrinfo(
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/_socketcommon.py", line 247, in getaddrinfo
j5a2q addrlist = get_hub().resolver.getaddrinfo(host, port, family, type, proto, flags)
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/resolver/thread.py", line 63, in getaddrinfo
j5a2q return self.pool.apply(_socket.getaddrinfo, args, kwargs)
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/pool.py", line 161, in apply
j5a2q return self.spawn(func, args, **kwds).get()
j5a2q File "src/gevent/event.py", line 329, in gevent._gevent_cevent.AsyncResult.get
j5a2q File "src/gevent/event.py", line 359, in gevent._gevent_cevent.AsyncResult.get
j5a2q File "src/gevent/event.py", line 347, in gevent._gevent_cevent.AsyncResult.get
j5a2q File "src/gevent/event.py", line 327, in gevent._gevent_cevent.AsyncResult._raise_exception
j5a2q File "src/gevent/event.py", line 272, in gevent.gevent_cevent.AsyncResult.excinfo.get
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/_tblib.py", line 415, in g
j5a2q return f(a)
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/_tblib.py", line 476, in load_traceback
j5a2q return loads(s)
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/tblib.py", line 149, in _init
j5a2q self.co_filename = code.co_filename
j5a2q File "/usr/local/lib/python3.8/site-packages/gevent/tblib.py", line 133, in _getattr
j5a2q return self[name]
j5a2q RecursionError: maximum recursion depth exceeded while calling a Python object