diff options
author | Andres Freund <andres@anarazel.de> | 2017-10-11 16:49:31 -0700 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2017-10-11 17:23:23 -0700 |
commit | 4c119fbcd49ba882791c7b99a1e934b985468e9f (patch) | |
tree | 3ab2f089ccdeac4a38e94552b6edf9557b3c7793 /src/backend/utils/adt/tsvector.c | |
parent | cff440d368690f94fbda1a475277e90ea2263843 (diff) | |
download | postgresql-4c119fbcd49ba882791c7b99a1e934b985468e9f.tar.gz postgresql-4c119fbcd49ba882791c7b99a1e934b985468e9f.zip |
Improve performance of SendRowDescriptionMessage.
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
Diffstat (limited to 'src/backend/utils/adt/tsvector.c')
0 files changed, 0 insertions, 0 deletions