Is it backward compatible as well? -Jim
On Mon, Sep 9, 2019 at 4:54 PM Joe Barnhart <joe.barnh...@gmail.com> wrote: > YES. This seems to work fine in my case. It permits me to save both > sessions and cache data to redis using Python3. Maybe we can get it > accepted and blessed for the next release. > > Joe > > On Monday, September 9, 2019 at 1:03:51 PM UTC-7, rastafarien wrote: >> >> Hello >> >> I have also proposed a patch to make redis work with my applications >> under wep2py latest ( 2.18.5-stable+timestamp.2019.04.08.04.22.03) and >> python3 >> it is attached to this post. >> "onetwomany" also released a patch. >> >> Basically >> >> 2 files are to be adjusted : redis_session.py and global.py >> >> 1/ Redis does not support bool so I replaced False by 0 >> 2/ Redis does not support datetime so I replaced datetime by str(datetime) >> >> Under linux and python3, I found out that it was the only way to have the >> "welcome" application ( and also my own applications) to work in a >> multinode environment accessing a distributed redis server for session >> caching. >> Let us know if it solves your problem. >> Regards >> Stephane >> >> >> Le lundi 9 septembre 2019 18:27:20 UTC+2, Joe Barnhart a écrit : >>> >>> I sure wish somebody could fix this. It's a real bottleneck to Python3 >>> adoption for my site. I tried using local storage for sessions but the >>> limitation on data size makes it a no-go for my site. If I can't use redis >>> I'll have to drop back to storing sessions in files and that really sucks >>> for a larger deployment. >>> >>> -- Joe >>> >>> On Monday, April 1, 2019 at 11:31:10 PM UTC-7, Massimo Di Pierro wrote: >>>> >>>> we could change True/False with 1/0 but a better approach would be to >>>> remove the value within the redis adapter. The value of locked does not do >>>> anything anyway on redis since it is not a relational database with >>>> transactions. >>>> >>>> On Sunday, 31 March 2019 10:19:20 UTC-7, Jim S wrote: >>>>> >>>>> I changed the following in gluon/globals.py and mine is working now. >>>>> But, I'm unclear on how to test to see if it is handling the locking >>>>> properly: >>>>> >>>>> dd = dict(locked=False, >>>>> client_ip=response.session_client, >>>>> modified_datetime=request.now, >>>>> session_data=session_pickled, >>>>> unique_key=unique_key) >>>>> >>>>> to >>>>> >>>>> dd = dict(locked='False', >>>>> client_ip=response.session_client, >>>>> modified_datetime=str(request.now), >>>>> session_data=session_pickled, >>>>> unique_key=unique_key) >>>>> >>>>> This makes all my stuff work (I'm still on Python 2.7 but I think the >>>>> problem has to do with the python redis client moving to version 3). >>>>> >>>>> Leonel - I think this relates back to an issue you commented on late >>>>> last year. >>>>> https://groups.google.com/forum/?pli=1#!searchin/web2py/redis%7Csort:date/web2py/PdquGF_9a2E/6VJpLqsnBgAJ >>>>> >>>>> At that time I just continued using python redis 2.10.6. But, can't >>>>> do that forever. Anyone able to test or improve upon the change I made >>>>> above? Like I said, it works for me, but I don't know how to see if I'm >>>>> causing any other unforeseen damage. >>>>> >>>>> -Jim >>>>> >>>>> On Friday, March 29, 2019 at 7:49:03 PM UTC-5, Joe Barnhart wrote: >>>>>> >>>>>> Hi Leonel -- >>>>>> >>>>>> My brain refuses to put together the words "session locked field". I >>>>>> understand the part of pickle smashing the values and encoding them as >>>>>> one >>>>>> string. The bool has something to do with session locking? >>>>>> >>>>>> I've only looked at the web2py redis code in the most scant way as I >>>>>> wasn't planning to become a redis expert. Sessions in redis could be >>>>>> important to me, tho, so I may need to set aside some time to dig into >>>>>> it. >>>>>> (Storing sessions in cookies has been problematic due to the limited >>>>>> space >>>>>> for cookies in browsers.) >>>>>> >>>>>> -- Joe >>>>>> >>>>>> >>>>>> On Wednesday, March 27, 2019 at 4:49:25 PM UTC-7, Leonel Câmara wrote: >>>>>>> >>>>>>> It's not your values Joe, pickle serializes them as a string so they >>>>>>> would be fine. It's web2py session locked field which is True or False. >>>>>>> It's probably easy to fix this in redis_session.py >>>>>>> >>>>>> -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to a topic in the > Google Groups "web2py-users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/web2py/0iU2wqSik0k/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > web2py+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/9ed9f575-1764-4dab-a93c-d7ec68e57638%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/9ed9f575-1764-4dab-a93c-d7ec68e57638%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/CAERBpoAKpgrt06WzKZCZbuGv4NRn_B3ok8p%2Bj5Gti9PSMeb-uQ%40mail.gmail.com.