Hi, On 2023-06-08 17:55:57 +0200, Matthias van de Meent wrote: > While I agree that "sharing page tables across processes" is useful, > it looks like it'd be much more effort to correctly implement for e.g. > DSM than implementing threading. > Konstantin's diff is "only" 20.1k lines [0] added and/or modified, > which is a lot, but it's manageable (13k+ of which are from files that > were auto-generated and then committed, likely accidentally).
Honestly, I don't think this patch is in a good enough state to allow a realistic estimation of the overall work. Making global variables TLS is the *easy* part. Redesigning postmaster, definining how to deal with extension libraries, extension compatibility, developing tools to make developing a threaded postgres feasible, dealing with freeing session lifetime memory allocations that previously were freed via process exit, making the change realistically reviewable, portability are all much harder. Greetings, Andres Freund