There's three categories of changes leading to better performance: - Splitting the per-attribute part of SendRowDescriptionMessage into a v2 and a v3 version allows avoiding branches for every attribute. - Preallocating the size of the buffer to be big enough for all attributes and then using pq_write* avoids unnecessary buffer size checks & resizing. - Reusing a persistently allocated StringInfo for all SendRowDescriptionMessage() invocations avoids repeated allocations & reallocations. Author: Andres Freund Discussion: https://postgr.es/m/20170914063418.sckdzgjfrsbekae4@alap3.anarazel.de |
||
---|---|---|
.. | ||
brin | ||
common | ||
gin | ||
gist | ||
hash | ||
heap | ||
index | ||
nbtree | ||
rmgrdesc | ||
spgist | ||
tablesample | ||
transam | ||
Makefile |