Ah, the error was (of course) between the keyboard and the chair. A database handle was defined on the thread class - not the instance. And for some reason everything was still working, just with very unexpected behavior :)
Have a good one Daniele On Mon, Oct 17, 2022 at 7:13 PM Stefan Knecht <knecht.ste...@gmail.com> wrote: > Exact same behavior with psycopg2-binary 2.9.4. > > > > On Mon, Oct 17, 2022 at 7:08 PM Stefan Knecht <knecht.ste...@gmail.com> > wrote: > >> Ciao Daniele >> >> Thanks for looking at this. >> >> >> >>> I understand this happens on RDS. Does it happen on normal Postgres >>> too, from a normal process (not some serverless thing?) >>> >>> >> I'll test this now. >> >> >>> Are there processes/forks involved? >> >> >> No, just Python's basic threading. >> >> >>> Which version of psycopg are you >>> using? Some old one have problems with closing connections in >>> multiprocess environments. That was fixed in psycopg 2.8 (#829). >>> >>> >> This is psycopg 3.1.3 >> >> And I just realized that all the other threading code I've got is on >> psycopg2-binary 2.8. Has there something changed with threads in v3 ? >> >> >> >> Stefan >> >>