Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> I doubt it. Almost nothing in the backend is thread-safe. You can't
> acquire a heavyweight lock, a lightweight lock, or a spinlock. You
> can't do anything that might elog() or ereport(). None of those
> things are reentrant.
Not to mention palloc, another extremely fundamental and non-reentrant
subsystem.
Possibly we could work on making all that stuff re-entrant, but it would
be a huge amount of work for a distant and uncertain payoff.
regards, tom lane