Hi, I am not sure whether these are new for 9.4 but they're worth looking at anyway: Valgrind was run with: --trace-children=yes --quiet \ --track-origins=yes --leak-check=no \ --read-var-info=yes \ --suppressions=/home/andres/src/postgresql/src/tools/valgrind.supp \ <postgres with options> All seem to be due btree_bit's fault and they seem to have a common origin. Didn't look at code.
==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x4C2C812: bcmp (mc_replace_strmem.c:935) ==27401== by 0x8A8533: byteacmp (varlena.c:2735) ==27401== by 0x8D70A2: DirectFunctionCall2Coll (fmgr.c:1050) ==27401== by 0x180822C6: gbt_bitcmp (btree_bit.c:68) ==27401== by 0x18079C05: gbt_vsrt_cmp (btree_utils_var.c:430) ==27401== by 0x919F66: qsort_arg (qsort_arg.c:121) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x18079E68: gbt_var_picksplit (btree_utils_var.c:484) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== ==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x8A853B: byteacmp (varlena.c:2736) ==27401== by 0x8D70A2: DirectFunctionCall2Coll (fmgr.c:1050) ==27401== by 0x180822C6: gbt_bitcmp (btree_bit.c:68) ==27401== by 0x18079C05: gbt_vsrt_cmp (btree_utils_var.c:430) ==27401== by 0x919F66: qsort_arg (qsort_arg.c:121) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x18079E68: gbt_var_picksplit (btree_utils_var.c:484) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== by 0x498491: gistSplitByKey (gistsplit.c:697) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== ==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x18079C0D: gbt_vsrt_cmp (btree_utils_var.c:431) ==27401== by 0x919F66: qsort_arg (qsort_arg.c:121) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x18079E68: gbt_var_picksplit (btree_utils_var.c:484) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== by 0x498491: gistSplitByKey (gistsplit.c:697) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== ==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x919F69: qsort_arg (qsort_arg.c:121) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x91A531: qsort_arg (qsort_arg.c:186) ==27401== by 0x18079E68: gbt_var_picksplit (btree_utils_var.c:484) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== by 0x498491: gistSplitByKey (gistsplit.c:697) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== ==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x8A853B: byteacmp (varlena.c:2736) ==27401== by 0x8D70A2: DirectFunctionCall2Coll (fmgr.c:1050) ==27401== by 0x180822C6: gbt_bitcmp (btree_bit.c:68) ==27401== by 0x180794CA: gbt_var_bin_union (btree_utils_var.c:249) ==27401== by 0x18079EC2: gbt_var_picksplit (btree_utils_var.c:496) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== by 0x498491: gistSplitByKey (gistsplit.c:697) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== ==27401== Conditional jump or move depends on uninitialised value(s) ==27401== at 0x180794CD: gbt_var_bin_union (btree_utils_var.c:249) ==27401== by 0x18079EC2: gbt_var_picksplit (btree_utils_var.c:496) ==27401== by 0x180825AC: gbt_bit_picksplit (btree_bit.c:180) ==27401== by 0x8D7AD3: FunctionCall2Coll (fmgr.c:1324) ==27401== by 0x497701: gistUserPicksplit (gistsplit.c:433) ==27401== by 0x498491: gistSplitByKey (gistsplit.c:697) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== by 0x499324: gistBuildCallback (gistbuild.c:490) ==27401== Uninitialised value was created by a heap allocation ==27401== at 0x4C274A0: malloc (vg_replace_malloc.c:291) ==27401== by 0x8F8EE1: AllocSetAlloc (aset.c:853) ==27401== by 0x8FAA71: palloc (mcxt.c:677) ==27401== by 0x18078E37: gbt_var_decompress (btree_utils_var.c:42) ==27401== by 0x8D79E5: FunctionCall1Coll (fmgr.c:1298) ==27401== by 0x48E4A6: gistdentryinit (gistutil.c:549) ==27401== by 0x498217: gistSplitByKey (gistsplit.c:644) ==27401== by 0x48BEEC: gistSplit (gist.c:1270) ==27401== by 0x48899D: gistplacetopage (gist.c:242) ==27401== by 0x48BAEE: gistinserttuples (gist.c:1134) ==27401== by 0x48BA73: gistinserttuple (gist.c:1093) ==27401== by 0x48A71F: gistdoinsert (gist.c:750) ==27401== Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers