I think there's a lot of unknowns in helping unpack this - for starters there's no code supplied that actually modifies the cache, so of course it is empty!
- There's a few gotchas in python - for example if this is done in the main file in your app (foo.py) and you run "python -m foo" then the module may be imported twice as "__main__" and as "foo" which can cause surprises. - I see you're using waitress so this probably isn't a problem, but you're using an in-memory cache and so nothing will be shared across processes if you ever fork. - Michael > On Oct 11, 2021, at 03:34, Gerhard Schmidt <esta...@augusta.de> wrote: > > Hi, > > today I encountered a very strange problem with request methods. > > <--- code ---> > > cache = {'agents': set(), > 'time': 0.0} > cache_lock = Lock() > > > def in_agent_cache(request): > with cache_lock: > return request.user_agent in cache['agents'] > > <--- end code ---> > > If I call the method directly, everything works fine. > > if I register the method as a request method and call it via > request.in_agent_cache() the dict is always the default version, the set > empty and time . > > If I move the dict and lock to another file and import it. Everything works > even as a request method. > > The log messages are also recorded under a wrong module > > 2021-10-11 10:29:33,153 INFO [agent_cache:96][waitress-0] in_agent_cache > called > > agent_cache is the name of the py file and not the package it's in. > > Any hint if I'm doing something wrong. > > Regards > Estartu > > > > > > > -- > You received this message because you are subscribed to the Google Groups > "pylons-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to pylons-discuss+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/pylons-discuss/90ae76af-8406-3ec5-b490-2f4af254431d%40augusta.de. -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pylons-discuss+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/pylons-discuss/6C2270B2-EA05-4FC6-98F5-A27863A22682%40gmail.com.