In maintenance/postgres/tables.sql, the profiling table should be defined like this:
CREATE TABLE profiling (
pf_count INTEGER NOT NULL DEFAULT 0, pf_time FLOAT NOT NULL DEFAULT 0, pf_memory FLOAT NOT NULL DEFAULT 0, pf_name TEXT NOT NULL, pf_server TEXT NULL
The current use of NUMERIC(18,10) very rapidly overflows the pf_memory column, generating errors. Also, the NUMERIC is very much slower than float, and in this case it has no advantages.
Proposed patch attached.