The most common culprit is undefined Function objects, like
Function('f'). This currently dynamically creates a class, which means
that pickle cannot easily handle it. If you use something like
cloudpickle, it can handle it better. However, I've also had issues
even with cloudpickle before. For example, this bug happens with both
pickle and cloudpickle:>>> Float(pi, dps=100) 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068 >>> pickle.loads(pickle.dumps(Float(pi, dps=100))) 3.141592653589793115997963468544185161590576171875000000000000000000000000000000000000000000000000000 We need to make a concerted effort to make SymPy expressions serialize better and get rid of the bugs with it. Aaron Meurer On Fri, Aug 14, 2020 at 1:34 AM roberto franceschini <[email protected]> wrote: > > > SymPy can have issues with things like pickle sometimes. > > Such as? > > On Thu, Aug 13, 2020 at 10:49 PM Paul Royik <[email protected]> wrote: >> >> You're right. >> >> On Wednesday, August 12, 2020 at 11:04:24 PM UTC+3, Aaron Meurer wrote: >>> >>> I haven't tried it but I imagine it would. The biggest challenge would >>> be the serialization method. SymPy can have issues with things like >>> pickle sometimes. >>> >>> Aaron Meurer >>> >>> On Wed, Aug 12, 2020 at 4:39 AM Paul Royik <[email protected]> wrote: >>> > >>> > Can SymPy run inside a Celery task? >>> > >>> > On Saturday, August 8, 2020 at 11:51:13 PM UTC+3, Aaron Meurer wrote: >>> >> >>> >> I wouldn't recommend using threads with SymPy. Even if it works (which >>> >> I expect it won't because we do have global things like the cache), >>> >> the Python GIL would prevent it from truly working concurrently. >>> >> Instead, use different processes. >>> >> >>> >> Aaron Meurer >>> >> >>> >> On Sat, Aug 8, 2020 at 2:32 PM Paul Royik <[email protected]> wrote: >>> >> > >>> >> > If sympy is run in multi-threaded environment, like apache, is it >>> >> > safe? Does cache require special handling? >>> >> > >>> >> > On Saturday, August 8, 2020 at 7:22:26 PM UTC+3, Oscar wrote: >>> >> >> >>> >> >> I don't know the inner workings of SymPy Live but I would imagine that >>> >> >> it uses a separate process for each user so that it isn't really >>> >> >> running SymPy in a multi-threaded environment. >>> >> >> >>> >> >> On Sat, 8 Aug 2020 at 16:09, Paul Royik <[email protected]> wrote: >>> >> >> > >>> >> >> > If a couple of users use sympy at the same time (like >>> >> >> > live.sympy.org), is it considered safe? >>> >> >> > What about cache? >>> >> >> > >>> >> >> > -- >>> >> >> > You received this message because you are subscribed to the Google >>> >> >> > Groups "sympy" group. >>> >> >> > To unsubscribe from this group and stop receiving emails from it, >>> >> >> > send an email to [email protected]. >>> >> >> > To view this discussion on the web visit >>> >> >> > https://groups.google.com/d/msgid/sympy/03913cb1-7348-4236-8c68-a83104713928o%40googlegroups.com. >>> >> > >>> >> > -- >>> >> > You received this message because you are subscribed to the Google >>> >> > Groups "sympy" group. >>> >> > To unsubscribe from this group and stop receiving emails from it, send >>> >> > an email to [email protected]. >>> >> > To view this discussion on the web visit >>> >> > https://groups.google.com/d/msgid/sympy/469ffd55-50ce-4261-a763-eb20a248b81do%40googlegroups.com. >>> > >>> > -- >>> > You received this message because you are subscribed to the Google Groups >>> > "sympy" group. >>> > To unsubscribe from this group and stop receiving emails from it, send an >>> > email to [email protected]. >>> > To view this discussion on the web visit >>> > https://groups.google.com/d/msgid/sympy/acca8510-3144-40b8-9456-866ab17932dco%40googlegroups.com. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "sympy" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/2a2299ba-abf4-4a90-9603-720427705626o%40googlegroups.com. > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/CAJxM9JqSRBqzYbfMYJsq3ZG9M4N5F0FiYps4-gi8VW32R8b4%3Dg%40mail.gmail.com. -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2BABHN4ywv3b-oq0JJBcK1D8uC2hVJ2Je70Z9Ckqu%2Bozw%40mail.gmail.com.
