mirror of
https://github.com/postgres/postgres.git
synced 2026-02-11 06:43:59 -05:00
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. |
||
|---|---|---|
| .. | ||
| expected | ||
| po | ||
| sql | ||
| .gitignore | ||
| generate-spiexceptions.pl | ||
| Makefile | ||
| nls.mk | ||
| plpy_cursorobject.c | ||
| plpy_cursorobject.h | ||
| plpy_elog.c | ||
| plpy_elog.h | ||
| plpy_exec.c | ||
| plpy_exec.h | ||
| plpy_main.c | ||
| plpy_main.h | ||
| plpy_planobject.c | ||
| plpy_planobject.h | ||
| plpy_plpymodule.c | ||
| plpy_plpymodule.h | ||
| plpy_procedure.c | ||
| plpy_procedure.h | ||
| plpy_resultobject.c | ||
| plpy_resultobject.h | ||
| plpy_spi.c | ||
| plpy_spi.h | ||
| plpy_subxactobject.c | ||
| plpy_subxactobject.h | ||
| plpy_typeio.c | ||
| plpy_typeio.h | ||
| plpy_util.c | ||
| plpy_util.h | ||
| plpython.h | ||
| plpython2u--1.0.sql | ||
| plpython2u--unpackaged--1.0.sql | ||
| plpython2u.control | ||
| plpython3u--1.0.sql | ||
| plpython3u--unpackaged--1.0.sql | ||
| plpython3u.control | ||
| plpythonu--1.0.sql | ||
| plpythonu--unpackaged--1.0.sql | ||
| plpythonu.control | ||
| regress-python3-mangle.mk | ||