-
Notifications
You must be signed in to change notification settings - Fork 143
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
RuntimeError: maximum recursion depth exceeded when jsonpickle's version is too low #147
Comments
Hey, thank you very much for reporting the issue. I have a few questions I'd like to ask you so that we can get to the root of this issue. Is this reproducible? If so, are you able to get a minimal block of code that can reproduce this? It would help us in troubleshooting it. Also, what's your configuration like? Are you using anything other than the default configuration? (such as a custom context). Is this being run on Lambda or on a local machine? Thanks! |
Hi, I tried to add it to existing project, so it's a bit hard for me to establish what the minimal block of code to reproduce this should be... I really just modified my settings.py as follows.
to INSTALLED_APPS
to MIDDLEWARE
I should probably have mentioned that I'm using aws-xray-sdk==2.4.2 I'm test-running thins in docker on a cloud9 instance. |
Hello, I did some more debugging on this and noticed that if I change the line of code that throws the exception to:
the exception goes away and I get json output. I then experimented a bit with the I'm a bit out of my element here, but perhaps this is related to the fact that I'm using multithreading (futures)? Hope it helps. |
Hmmm as long as your threads are self contained and begin and end their own unit of work, it shouldn't cause any issues. What do your threads actually do? Is there a particular endpoint that causes this? It makes me very curious what's causing this to happen. Is the segment being modified in any way? Usually this type of condition can happen if the entity contains an invalid parameter or it was some how corrupted. The fact that changing |
The threads are used to fetch multiple pieces of data in parallel from a number of databases. I don't see any particular endpoint causing it. I only got as far as modifying the settings file and making a test request to It's not intermittent and happens multiple times while a single request is handled. |
When you set your unpicklable to True, you mention that it seems to work. Is it possible for you to send over the raw trace information so that I can help diagnose this. Since Just an extra precaution: Make sure you have the latest version of JsonPickle installed. |
Looks like upgrading jsonpickle did it! I was on 0.4, upgraded to 1.1 and the recursion error seems to have gone away. I'll do some more testing probably in the evening, but it's looking good. You might want to update the dependencies in setup.py. Thanks for your quick responses on this @chanchiem , much appreciated! |
Good to know we were able to help you solve your problem :). I will add this as a task to do:
|
Since the |
Hello,
I want to give x-ray a go on django 1.11, but on this line:
aws-xray-sdk-python/aws_xray_sdk/core/models/entity.py
Line 254 in 707358c
I'm getting:
I'm assuming this is something I can fix in my code, but am hoping for a hint as to what it might be...
The text was updated successfully, but these errors were encountered: