btree_gist valgrind warnings about uninitialized memory

Поиск
Список
Период
Сортировка
От Andres Freund
Тема btree_gist valgrind warnings about uninitialized memory
Дата
Msg-id 20140506190319.GA555@awork2.anarazel.de
обсуждение исходный текст
Ответы Re: btree_gist valgrind warnings about uninitialized memory
Список pgsql-hackers
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



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: Issue with GRANT/COMMENT ON FUNCTION with default
Следующее
От: Kevin Grittner
Дата:
Сообщение: Re: [COMMITTERS] pgsql: pgindent run for 9.4