Skip to content

Commit 08aa131

Browse files
committed
Simplify pg_mcv_list (de)serialization
The serialization format of multivariate MCV lists included alignment in order to allow direct access to part of the serialized data, but despite multiple fixes (see for example commits d85e0f3 and ea4e1c0) this proved to be problematic. This commit abandons alignment in the serialized format, and just copies everything during deserialization. We now also track amount of memory needed after deserialization (including alignment), which allows us to deserialize the MCV list in a single pass. Bump catversion, as this affects contents of pg_statistic_ext_data. Backpatch to 12, where multi-column MCV lists were introduced. Author: Tomas Vondra Reviewed-by: Tom Lane Discussion: https://postgr.es/m/2201.1561521148@sss.pgh.pa.us
1 parent 4d66285 commit 08aa131

File tree

3 files changed

+183
-111
lines changed

3 files changed

+183
-111
lines changed

0 commit comments

Comments
 (0)