Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deleting a record - ManyToMany Field StackOverflow error #318

Open
konvig opened this issue Jun 20, 2022 · 0 comments
Open

Deleting a record - ManyToMany Field StackOverflow error #318

konvig opened this issue Jun 20, 2022 · 0 comments

Comments

@konvig
Copy link

konvig commented Jun 20, 2022

Hello,

I just want to report an issue with ManyToMany incompatibility within django-parlel, maybe it's not an issue and it's just my code? This error happens when I want to delete a record within Django admin panel with ManyToMany relation.

Here is an error

[20/Jun/2022 15:10:38] "GET /static/admin/js/cancel.js HTTP/1.1" 200 728
Fatal Python error: Cannot recover from stack overflow.
Python runtime state: initialized

Current thread 0x00000664 (most recent call first):
    \lib\site-packages\django\utils\tree.py", line 39 in _new_instance
    \lib\site-packages\django\db\models\sql\where.py", line 148 in clone
    \lib\site-packages\django\db\models\sql\query.py", line 317 in clone
    \lib\site-packages\django\db\models\sql\query.py", line 359 in chain
    \lib\site-packages\django\db\models\query.py", line 1313 in _clone
    \lib\site-packages\django\db\models\query.py", line 1301 in _chain
    \lib\site-packages\django\db\models\query.py", line 956 in _filter_or_exclude
    \lib\site-packages\django\db\models\query.py", line 941 in filter
    \lib\site-packages\django\db\models\manager.py", line 85 in manager_method
    \lib\site-packages\django\db\models\base.py", line 625 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
    \lib\site-packages\django\db\models\query_utils.py", line 150 in __get__
    \lib\site-packages\parler\models.py", line 917 in <listcomp>
    \lib\site-packages\parler\models.py", line 917 in _get_field_values
    \lib\site-packages\parler\models.py", line 834 in __init__
    \lib\site-packages\django\db\models\base.py", line 515 in from_db
    \lib\site-packages\django\db\models\query.py", line 69 in __iter__
    \lib\site-packages\django\db\models\query.py", line 1324 in _fetch_all
    \lib\site-packages\django\db\models\query.py", line 262 in __len__
    \lib\site-packages\django\db\models\query.py", line 431 in get
    \lib\site-packages\django\db\models\base.py", line 637 in refresh_from_db
  ...

Thread 0x00005e20 (most recent call first):
    Python\Python38\lib\selectors.py", line 314 in _select
    Python\Python38\lib\selectors.py", line 323 in select
    Python\Python38\lib\socketserver.py", line 232 in serve_forever
    \lib\site-packages\django\core\servers\basehttp.py", line 220 in run
    \lib\site-packages\django\core\management\commands\runserver.py", line 139 in inner_run
    \lib\site-packages\django\utils\autoreload.py", line 64 in wrapper
    Python\Python38\lib\threading.py", line 870 in run
    Python\Python38\lib\threading.py", line 932 in _bootstrap_inner
    Python\Python38\lib\threading.py", line 890 in _bootstrap

Thread 0x00004f30 (most recent call first):
    \lib\site-packages\django\utils\autoreload.py", line 384 in tick
    \lib\site-packages\django\utils\autoreload.py", line 334 in run_loop
    \lib\site-packages\django\utils\autoreload.py", line 328 in run
    \lib\site-packages\django\utils\autoreload.py", line 622 in start_django
    \lib\site-packages\django\utils\autoreload.py", line 637 in run_with_reloader
    \lib\site-packages\django\core\management\commands\runserver.py", line 103 in run
    \lib\site-packages\django\core\management\commands\runserver.py", line 96 in handle
    \lib\site-packages\django\core\management\base.py", line 398 in execute
    \lib\site-packages\django\core\management\commands\runserver.py", line 61 in execute
    \lib\site-packages\django\core\management\base.py", line 354 in run_from_argv
    \lib\site-packages\django\core\management\__init__.py", line 413 in execute
    \lib\site-packages\django\core\management\__init__.py", line 419 in execute_from_command_line      
  File "manage.py", line 18 in main
  File "manage.py", line 22 in <module>

The method that causes the issue is probably this one:

  def _get_field_values(self):
        # Use the new Model._meta API.
        return [getattr(self, field.get_attname()) for field in self._meta.get_fields() if not field.is_relation or field.many_to_one]

Do you have any idea how could I fix that?

If additional code is required, just let me know.

Thanks :)

@konvig konvig changed the title ManyToMany Field StackOverflow error Deleting a record - ManyToMany Field StackOverflow error Jun 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant