[COMMITTERS] pgsql: Use wrappers of PG_DETOAST_DATUM_PACKED() more.
От | Noah Misch |
---|---|
Тема | [COMMITTERS] pgsql: Use wrappers of PG_DETOAST_DATUM_PACKED() more. |
Дата | |
Msg-id | E1cnD7M-00034N-U1@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Use wrappers of PG_DETOAST_DATUM_PACKED() more. This makes almost all core code follow the policy introduced in the previous commit. Specific decisions: - Text search support functions with char* and length arguments, such as prsstart and lexize, may receive unaligned strings. I doubt maintainers of non-core text search code will notice. - Use plain VARDATA() on values detoasted or synthesized earlier in the same function. Use VARDATA_ANY() on varlenas sourced outside the function, even if they happen to always have four-byte headers. As an exception, retain the universal practice of using VARDATA() on return values of SendFunctionCall(). - Retain PG_GETARG_BYTEA_P() in pageinspect. (Page images are too large for a one-byte header, so this misses no optimization.) Sites that do not call get_page_from_raw() typically need the four-byte alignment. - For now, do not change btree_gist. Its use of four-byte headers in memory is partly entangled with storage of 4-byte headers inside GBT_VARKEY, on disk. - For now, do not change gtrgm_consistent() or gtrgm_distance(). They incorporate the varlena header into a cache, and there are multiple credible implementation strategies to consider. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/3a0d473192b2045cbaf997df8437e7762d34f3ba Modified Files -------------- contrib/adminpack/adminpack.c | 16 +- contrib/dblink/dblink.c | 10 +- contrib/fuzzystrmatch/dmetaphone.c | 4 +- contrib/fuzzystrmatch/fuzzystrmatch.c | 6 +- contrib/intarray/_int_op.c | 6 +- contrib/pageinspect/btreefuncs.c | 6 +- contrib/pageinspect/rawpage.c | 10 +- contrib/pg_prewarm/pg_prewarm.c | 4 +- contrib/pg_trgm/trgm_gin.c | 15 +- contrib/pg_trgm/trgm_gist.c | 17 +- contrib/pg_trgm/trgm_op.c | 12 +- contrib/pgcrypto/pgcrypto.c | 94 +++++------ contrib/pgcrypto/pgp-pgsql.c | 100 ++++++------ contrib/pgrowlocks/pgrowlocks.c | 2 +- contrib/pgstattuple/pgstatindex.c | 8 +- contrib/pgstattuple/pgstattuple.c | 4 +- contrib/sepgsql/label.c | 4 +- contrib/spi/autoinc.c | 2 +- contrib/sslinfo/sslinfo.c | 4 +- contrib/unaccent/unaccent.c | 6 +- contrib/uuid-ossp/uuid-ossp.c | 8 +- contrib/xml2/xpath.c | 42 ++--- contrib/xml2/xslt_proc.c | 14 +- src/backend/access/spgist/spgtextproc.c | 3 +- src/backend/access/transam/xlogfuncs.c | 4 +- src/backend/commands/extension.c | 2 +- src/backend/commands/sequence.c | 2 +- src/backend/commands/trigger.c | 8 +- src/backend/commands/tsearchcmds.c | 6 +- src/backend/executor/execQual.c | 6 +- src/backend/libpq/be-fsstubs.c | 6 +- src/backend/replication/logical/origin.c | 2 +- src/backend/tsearch/dict.c | 10 +- src/backend/tsearch/to_tsany.c | 22 +-- src/backend/tsearch/wparser.c | 19 +-- src/backend/utils/adt/acl.c | 260 +++++++++++++++---------------- src/backend/utils/adt/char.c | 6 +- src/backend/utils/adt/dbsize.c | 2 +- src/backend/utils/adt/encode.c | 16 +- src/backend/utils/adt/formatting.c | 40 ++--- src/backend/utils/adt/genfile.c | 8 +- src/backend/utils/adt/json.c | 8 +- src/backend/utils/adt/jsonb.c | 2 +- src/backend/utils/adt/jsonfuncs.c | 24 +-- src/backend/utils/adt/like.c | 24 +-- src/backend/utils/adt/numeric.c | 44 +++--- src/backend/utils/adt/quote.c | 6 +- src/backend/utils/adt/rangetypes.c | 2 +- src/backend/utils/adt/regproc.c | 2 +- src/backend/utils/adt/ruleutils.c | 12 +- src/backend/utils/adt/selfuncs.c | 18 +-- src/backend/utils/adt/tid.c | 2 +- src/backend/utils/adt/tsquery_rewrite.c | 2 +- src/backend/utils/adt/tsvector_op.c | 18 +-- src/backend/utils/adt/varlena.c | 24 +-- src/backend/utils/adt/xml.c | 28 ++-- src/backend/utils/misc/rls.c | 2 +- src/pl/plperl/Util.xs | 10 +- src/pl/plpython/plpy_typeio.c | 6 +- 59 files changed, 521 insertions(+), 529 deletions(-)
В списке pgsql-committers по дате отправления:
Предыдущее
От: David RowleyДата:
Сообщение: Re: [COMMITTERS] pgsql: dblink: Replace some macros by static functions