[pgpool-general: 9383] Re: I want to check past bug fixes
Tatsuo Ishii
ishii at postgresql.org
Mon Mar 3 12:25:02 JST 2025
> Hi, Team.
>
> A segmentation fault occurs about three times a day in a user's
> production environment (Pgpool-II 4.2.4).
>
> Can you confirm whether the following information matches the bug
> that was fixed in Pgpool-II 4.2.5 and later?
> I checked the release notes, but some of the information was not
> available, so I was unable to find the answer.
4.2.4 is pretty old (released in 2021). You could always try the
latest pgpool version to see if this has been already fixed. (I
assume that you can reproduce the problem.)
> Also, the SQL executed in call stack 1 and call stack 2 in the information
> below is SELECT, but will the insertinto_or_locking_clause_walker be
> executed?
insertinto_or_locking_clause_walker is always called if it's a SELECT
statement. It does nothing if the SELECT does not have LockingClause.
Best reagards,
--
Tatsuo Ishii
SRA OSS K.K.
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp
> The call stacks obtained were the following four patterns.
>
> (1) Call stack 1
> Feb 19 08:08:01 apltmciothjph04 <user.crit> systemd-coredump[1898653]: Process 1894306 (pgpool) of user 0 dumped core.
> Stack trace of thread 1894306:
> #0 0x000055b4d3418f99 insertinto_or_locking_clause_walker (pgpool)
> #1 0x000055b4d34169c3 raw_expression_tree_walker (pgpool)
> #2 0x000055b4d3416e5d raw_expression_tree_walker (pgpool)
> #3 0x000055b4d3416d3d raw_expression_tree_walker (pgpool)
> #4 0x000055b4d3419364 pool_has_insertinto_or_locking_clause (pgpool)
> #5 0x000055b4d34134b4 send_to_where (pgpool)
> #6 0x000055b4d34036ee Parse (pgpool)
> #7 0x000055b4d34044f1 ProcessFrontendResponse (pgpool)
> #8 0x000055b4d33f6298 pool_process_query (pgpool)
> #9 0x000055b4d33eea6a do_child (pgpool)
> #10 0x000055b4d33c2927 fork_a_child (pgpool)
> #11 0x000055b4d33c345a reaper (pgpool)
> #12 0x000055b4d33ca3f4 PgpoolMain (pgpool)
> #13 0x000055b4d33c08cc main (pgpool)
> #14 0x00007f8946101d85 __libc_start_main (libc.so.6)
> #15 0x000055b4d33c0e6e _start (pgpool)
>
>
> (2) Call stack 2
> Feb 17 17:34:36 apltmciothjph04 <user.crit> systemd-coredump[3853661]: Process 3806414 (pgpool) of user 0 dumped core.
> Stack trace of thread 3806414:
> #0 0x000055b4d3418f99 insertinto_or_locking_clause_walker (pgpool)
> #1 0x000055b4d3416e5d raw_expression_tree_walker (pgpool)
> #2 0x000055b4d3416d3d raw_expression_tree_walker (pgpool)
> #3 0x000055b4d3419364 pool_has_insertinto_or_locking_clause (pgpool)
> #4 0x000055b4d34134b4 send_to_where (pgpool)
> #5 0x000055b4d34036ee Parse (pgpool)
> #6 0x000055b4d34044f1 ProcessFrontendResponse (pgpool)
> #7 0x000055b4d33f6298 pool_process_query (pgpool)
> #8 0x000055b4d33eea6a do_child (pgpool)
> #9 0x000055b4d33c2927 fork_a_child (pgpool)
> #10 0x000055b4d33c345a reaper (pgpool)
> #11 0x000055b4d33ca3f4 PgpoolMain (pgpool)
> #12 0x000055b4d33c08cc main (pgpool)
> #13 0x00007f8946101d85 __libc_start_main (libc.so.6)
> #14 0x000055b4d33c0e6e _start (pgpool)
>
>
> (3) Call stack 3
> Feb 13 05:15:43 apltmciothjph04 <user.crit> systemd-coredump[1815245]: Process 1801651 (pgpool) of user 0 dumped core.
> Stack trace of thread 1801651:
> #0 0x00007f89461628d6 malloc (libc.so.6)
> #1 0x00007f89461cd5da build_trtable (libc.so.6)
> #2 0x00007f89461d3760 re_search_internal (libc.so.6)
> #3 0x00007f89461d8dcb regexec@@GLIBC_2.3.4 (libc.so.6)
> #4 0x000055b4d34194db pattern_compare (pgpool)
> #5 0x000055b4d341a544 function_call_walker (pgpool)
> #6 0x000055b4d34169c3 raw_expression_tree_walker (pgpool)
> #7 0x000055b4d34169c3 raw_expression_tree_walker (pgpool)
> #8 0x000055b4d3416933 raw_expression_tree_walker (pgpool)
> #9 0x000055b4d34169d0 raw_expression_tree_walker (pgpool)
> #10 0x000055b4d3416e5d raw_expression_tree_walker (pgpool)
> #11 0x000055b4d3416d3d raw_expression_tree_walker (pgpool)
> #12 0x000055b4d3416933 raw_expression_tree_walker (pgpool)
> #13 0x000055b4d3416e5d raw_expression_tree_walker (pgpool)
> #14 0x000055b4d3416d4e raw_expression_tree_walker (pgpool)
> #15 0x000055b4d341904c pool_has_function_call (pgpool)
> #16 0x000055b4d3413adb pool_where_to_send (pgpool)
> #17 0x000055b4d34036ee Parse (pgpool)
> #18 0x000055b4d34044f1 ProcessFrontendResponse (pgpool)
> #19 0x000055b4d33f6298 pool_process_query (pgpool)
> #20 0x000055b4d33eea6a do_child (pgpool)
> #21 0x000055b4d33c2927 fork_a_child (pgpool)
> #22 0x000055b4d33c345a reaper (pgpool)
> #23 0x000055b4d33ca3f4 PgpoolMain (pgpool)
> #24 0x000055b4d33c08cc main (pgpool)
> #25 0x00007f8946101d85 __libc_start_main (libc.so.6)
> #26 0x000055b4d33c0e6e _start (pgpool)
>
>
> (4) Call stack 4
> Feb 11 16:36:06 apltmciothjph04 <user.crit> systemd-coredump[3872596]: Process 3837381 (pgpool) of user 0 dumped core.
> Stack trace of thread 3837381:
> #0 0x000055b4d3416e55 raw_expression_tree_walker (pgpool)
> #1 0x000055b4d3416d3d raw_expression_tree_walker (pgpool)
> #2 0x000055b4d3419364 pool_has_insertinto_or_locking_clause (pgpool)
> #3 0x000055b4d34134b4 send_to_where (pgpool)
> #4 0x000055b4d34036ee Parse (pgpool)
> #5 0x000055b4d34044f1 ProcessFrontendResponse (pgpool)
> #6 0x000055b4d33f6298 pool_process_query (pgpool)
> #7 0x000055b4d33eea6a do_child (pgpool)
> #8 0x000055b4d33c2927 fork_a_child (pgpool)
> #9 0x000055b4d33c345a reaper (pgpool)
> #10 0x000055b4d33ca3f4 PgpoolMain (pgpool)
> #11 0x000055b4d33c08cc main (pgpool)
> #12 0x00007f8946101d85 __libc_start_main (libc.so.6)
> #13 0x000055b4d33c0e6e _start (pgpool)
>
>
>
> The execution SQL of call stack 1 and call stack 2 is known to be as follows.
>
> (5) Executed SQL in Call Stack 1 (The SQL has been partially modified.)
> 2025-02-19 08:08:01: pid 1894306: DETAIL: statement: "", query: "select "_"."aa0001",
> "_"."aa0002",
> "_"."aa0003",
> "_"."aa0004",
> "_"."aa0005",
> "_"."aa0006",
> "_"."aa0007",
> "_"."aa0008",
> "_"."aa0009",
> "_"."aa0010",
> "_"."aa0011",
> "_"."aa0012",
> "_"."aa0013",
> "_"."aa0014",
> "_"."aa0015",
> "_"."aa0016",
> "_"."aa0017",
> "_"."__aa00018",
> "_"."__aa00019",
> "_"."aa0020",
> "_"."aa0021",
> "_"."aa0022",
> "_"."aa0023",
> "_"."aa0024",
> "_"."aa0025",
> "_"."aa0026",
> "_"."aa0027",
> "_"."aa0028",
> "_"."aa0029",
> "_"."aa0030",
> "_"."aa0031",
> "_"."aa0032",
> "_"."aa0033",
> "_"."aa0034",
> "_"."aa0035",
> "_"."aa0036",
> "_"."aa0037",
> "_"."aa0038",
> "_"."aa0039",
> "_"."aa0040",
> "_"."aa0041",
> "_"."aa0042",
> "_"."aa0043",
> "_"."aa0044",
> "_"."aa0045",
> "_"."aa0046",
> "_"."aa0047",
> "_"."aa0048",
> "_"."aa0049",
> "_"."aa0050",
> "_"."aa0051",
> "_"."aa0052",
> "_"."aa0053",
> "_"."aa0054",
> "_"."aa0055",
> "_"."aa0056",
> "_"."aa0057",
> "_"."aa0058",
> "_"."aa0059",
> "_"."aa0060",
> "_"."aa0061",
> "_"."aa0062",
> "_"."aa0063",
> "_"."aa0064",
> "_"."aa0065",
> "_"."aa0066",
> "_"."aa0067",
> "_"."aa0068",
> "_"."aa0069",
> "_"."aa0070",
> "_"."aa0071",
> "_"."aa0072",
> "_"."aa0073",
> "_"."aa0074",
> "_"."aa0075",
> "_"."aa0076",
> "_"."aa0077",
> "_"."aa0078",
> "_"."aa0079",
> "_"."aa0080",
> "_"."aa0081",
> "_"."aa0082",
> "_"."aa0083",
> "_"."aa0084",
> "_"."aa0085",
> "_"."aa0086",
> "_"."aa0087",
> "_"."aa0088",
> "_"."aa0089",
> "_"."aa0090",
> "_"."aa0091",
> "_"."aa0092",
> "_"."aa0093",
> "_"."aa0094",
> "_"."aa0095",
> "_"."aa0096",
> "_"."aa0097",
> "_"."aa0098",
> "_"."aa0099",
> "_"."aa0100",
> "_"."aa0101",
> "_"."aa0102",
> "_"."aa0103"
> from "public"."tbl1" "_"
> where ("_"."aa0005>= timestamp '2025-01-01 00:00:00' and "_"."aa0005" < timestamp '2026-01-01 00:00:00' or "_"."aa0005" >= timestamp '2024-01-01 00:00:00' and "_"."aa0005" < timestamp '2025-01-01 00:00:00') and ("_"."aa0011" = U&'....\3000..st
> ..' and "_"."aa0011" is not null or "_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null)"
> 2025-02-19 08:08:01: pid 2651623: WARNING: child process with pid: 1894306 was terminated by segmentation fault
>
>
> (6) Executed SQL in Call Stack 2 (The SQL has been partially modified.)
> 2025-02-17 17:34:35: pid 3806414: DETAIL: statement: "", query: "select "_"."aa0001" as "aa0001",
> "_"."aa0002" as "aa0002",
> "_"."aa0003" as "aa0003",
> "_"."aa0004" as "aa0004"
> "_"."aa0005" as "aa0005"
> "_"."aa0006" as "aa0006",
> "_"."aa0007" as "aa0007",
> replace("_"."t0_0", 'A', '..') as "../aa0008",
> "_"."aa0009" as "aa0001",
> "_"."aa0010" as "aa0010",
> "_"."aa0011" as "aa0011",
> "_"."aa0013" as "aa0013",
> "_"."aa0014" as "aa0014",
> "_"."aa0015" as "aa0015",
> "_"."aa0016" as "aa0016",
> "_"."aa0017" as "aa0017",
> "_"."aa0018" as "aa0018",
> "_"."aa0019" as "aa0019",
> "_"."aa0020" as "aa0020",
> "_"."aa0021" as "aa0021",
> "_"."aa0022" as "aa0022",
> "_"."aa0023" as "aa0023",
> "_"."aa0024" as "aa0024",
> "_"."aa0025" as "aa0025",
> "_"."aa0026" as "aa0026",
> "_"."aa0027" as "aa0027",
> "_"."aa0028" as "aa0028",
> "_"."aa0029" as "aa0029",
> "_"."aa0030" as "aa0030",
> "_"."aa0031" as "aa0031",
> "_"."aa0032" as "aa0032",
> "_"."aa0033" as "aa0033",
> "_"."aa0034" as "aa0034",
> "_"."aa0035" as "aa0035",
> "_"."aa0036" as "aa0036",
> "_"."aa0037" as "aa0037",
> "_"."aa0038" as "aa0038",
> "_"."aa0039" as "aa0039",
> "_"."aa0040" as "aa0040",
> "_"."aa0041" as "aa0041",
> "_"."aa0042" as "aa0042",
> "_"."aa0043" as "aa0043",
> "_"."aa0044" as "aa0044",
> "_"."aa0045" as "aa0045",
> "_"."aa0046" as "aa0046",
> "_"."aa0047" as "aa0047",
> "_"."aa0048" as "aa0048",
> "_"."aa0049" as "aa0049",
> "_"."aa0050" as "aa0050",
> "_"."aa0051" as "aa0051",
> "_"."aa0052" as "aa0052",
> "_"."aa0053" as "aa0053",
> "_"."aa0054" as "aa0054",
> "_"."aa0055" as "aa0055",
> "_"."aa0056" as "aa0056",
> "_"."aa0057" as "aa0057",
> "_"."aa0058" as "aa0058",
> "_"."aa0059" as "aa0059",
> "_"."aa0060" as "aa0060",
> "_"."aa0061" as "aa0061",
> "_"."aa0062" as "aa0062",
> "_"."aa0063" as "aa0063",
> "_"."aa0064" as "aa0064",
> "_"."aa0065" as "aa0065",
> "_"."aa0066" as "aa0066",
> "_"."aa0067" as "aa0067",
> "_"."aa0068" as "aa0068",
> "_"."aa0069" as "aa0069",
> "_"."aa0070" as "aa0070",
> "_"."aa0071" as "aa0071",
> "_"."aa0072" as "aa0072",
> "_"."aa0073" as "aa0073",
> "_"."aa0074" as "aa0074",
> "_"."aa0075" as "aa0075",
> "_"."aa0076" as "aa0076",
> "_"."aa0077" as "aa0077",
> "_"."aa0078" as "aa0078",
> "_"."aa0079" as "aa0079",
> "_"."aa0080" as "aa0080",
> "_"."aa0081" as "aa0081",
> "_"."aa0082" as "aa0082",
> "_"."aa0083" as "aa0083",
> "_"."aa0084" as "aa0084",
> "_"."aa0085" as "aa0085",
> "_"."aa0086" as "aa0086",
> "_"."aa0087" as "aa0087",
> "_"."aa0088" as "aa0088",
> "_"."aa0089" as "aa0089",
> "_"."aa0090" as "aa0090",
> "_"."aa0091" as "aa0091",
> "_"."aa0092" as "aa0092",
> "_"."aa0093" as "aa0093",
> "_"."aa0094" as "aa0094",
> "_"."aa0095" as "aa0095",
> "_"."aa0096" as "aa0096",
> "_"."aa0097" as "aa0097",
> "_"."aa0098" as "aa0098",
> "_"."aa0099" as "aa0099",
> "_"."aa0100" as "aa0100",
> "_"."aa0101" as "aa0101",
> "_"."aa0102" as "aa0102",
> "_"."aa0103" as "aa0103",
> "_"."aa0104" as "aa0104"
> from
> (
> select "_"_"."aa0001" as "aa0001",
> "_"."aa0002" as "aa0002",
> "_"."aa0003" as "aa0003",
> "_"."aa0004" as "aa0004",
> "_"."aa0005" as "aa0005",
> "_"."aa0006" as "aa0006",
> "_"."aa0007" as "aa0007",
> "_"."aa0008" as "aa0008",
> "_"."aa0009" as "aa0009",
> "_"."aa0010" as "aa0010",
> "_"."aa0011" as "aa0011",
> "_"."aa0012" as "aa0012",
> "_"."aa0013" as "aa0013",
> "_"."aa0014" as "aa0014",
> "_"."aa0015" as "aa0015",
> "_"."aa0016" as "aa0016",
> "_"."aa0017" as "aa0017",
> "_"."aa0018" as "aa0018",
> "_"."aa0019" as "aa0019",
> "_"."aa0020" as "aa0020",
> "_"."aa0021" as "aa0021",
> "_"."aa0023" as "aa0023",
> "_"."aa0024" as "aa0024",
> "_"."aa0025" as "aa0025",
> "_"."aa0026" as "aa0026",
> "_"."aa0027" as "aa0027",
> "_"."aa0028" as "aa0028",
> "_"."aa0029" as "aa0029",
> "_"."aa0030" as "aa0030",
> "_"."aa0031" as "aa0031",
> "_"."aa0032" as "aa0032",
> "_"."aa0033" as "aa0033",
> "_"."aa0034" as "aa0034",
> "_"."aa0035" as "aa0035",
> "_"."aa0036" as "aa0036",
> "_"."aa0037" as "aa0037",
> "_"."aa0038" as "aa0038",
> "_"."aa0039" as "aa0039",
> "_"."aa0040" as "aa0040",
> "_"."aa0041" as "aa0041",
> "_"."aa0042" as "aa0042",
> "_"."aa0043" as "aa0043",
> "_"."aa0044" as "aa0044",
> "_"."aa0045" as "aa0045",
> "_"."aa0046" as "aa0046",
> "_"."aa0047" as "aa0047",
> "_"."aa0048" as "aa0048",
> "_"."aa0049" as "aa0049",
> "_"."aa0050" as "aa0050",
> "_"."aa0051" as "aa0051",
> "_"."aa0052" as "aa0052",
> "_"."aa0053" as "aa0053",
> "_"."aa0054" as "aa0054",
> "_"."aa0055" as "aa0055",
> "_"."aa0056" as "aa0056",
> "_"."aa0057" as "aa0057",
> "_"."aa0058" as "aa0058",
> "_"."aa0059" as "aa0059",
> "_"."aa0060" as "aa0060",
> "_"."aa0061" as "aa0061",
> "_"."aa0062" as "aa0062",
> "_"."aa0063" as "aa0063",
> "_"."aa0064" as "aa0064",
> "_"."aa0065" as "aa0065",
> "_"."aa0066" as "aa0066",
> "_"."aa0067" as "aa0067",
> "_"."aa0068" as "aa0068",
> "_"."aa0069" as "aa0069",
> "_"."aa0070" as "aa0070",
> "_"."aa0071" as "aa0071",
> "_"."aa0072" as "aa0072",
> "_"."aa0073" as "aa0073",
> "_"."aa0074" as "aa0074",
> "_"."aa0075" as "aa0075",
> "_"."aa0076" as "aa0076",
> "_"."aa0077" as "aa0077",
> "_"."aa0078" as "aa0078",
> "_"."aa0079" as "aa0079",
> "_"."aa0080" as "aa0080",
> "_"."aa0081" as "aa0081",
> "_"."aa0082" as "aa0082",
> "_"."aa0083" as "aa0083",
> "_"."aa0084" as "aa0084",
> "_"."aa0085" as "aa0085",
> "_"."aa0086" as "aa0086",
> "_"."aa0087" as "aa0087",
> "_"."aa0088" as "aa0088",
> "_"."aa0089" as "aa0089",
> "_"."aa0090" as "aa0090",
> "_"."aa0091" as "aa0091",
> "_"."aa0092" as "aa0092",
> "_"."aa0093" as "aa0093",
> "_"."aa0094" as "aa0094",
> "_"."aa0095" as "aa0095",
> "_"."aa0096" as "aa0096",
> "_"."aa0097" as "aa0097",
> "_"."aa0098" as "aa0098",
> "_"."aa0099" as "aa0099",
> "_"."aa0100" as "aa0100",
> "_"."aa0101" as "aa0101",
> "_"."aa0102" as "aa0102",
> "_"."aa0103" as "aa0103",
> "_"."aa0104" as "aa0104",
> replace("_"."aa0105", 'B', '..') as "aa0105"
> from
> (
> select "_"."aa0001",
> "_"."aa0001",
> "_"."aa0002",
> "_"."aa0003",
> "_"."aa0004",
> "_"."aa0005",
> "_"."aa0006",
> "_"."aa0007",
> "_"."aa0008",
> "_"."aa0009",
> "_"."aa0000",
> "_"."aa0011",
> "_"."aa0012",
> "_"."aa0013",
> "_"."aa0014",
> "_"."aa0015",
> "_"."aa0016",
> "_"."aa0017",
> "_"."aa0018",
> "_"."aa0019",
> "_"."aa0020",
> "_"."aa0021",
> "_"."aa0023",
> "_"."aa0024",
> "_"."aa0025",
> "_"."aa0026",
> "_"."aa0027",
> "_"."aa0028",
> "_"."aa0029",
> "_"."aa0030",
> "_"."aa0031",
> "_"."aa0032",
> "_"."aa0033",
> "_"."aa0034",
> "_"."aa0035",
> "_"."aa0036",
> "_"."aa0037",
> "_"."aa0038",
> "_"."aa0039",
> "_"."aa0040",
> "_"."aa0041",
> "_"."aa0042",
> "_"."aa0043",
> "_"."aa0044",
> "_"."aa0045",
> "_"."aa0046",
> "_"."aa0047",
> "_"."aa0048",
> "_"."aa0049",
> "_"."aa0050",
> "_"."aa0051",
> "_"."aa0052",
> "_"."aa0053",
> "_"."aa0054",
> "_"."aa0055",
> "_"."aa0056",
> "_"."aa0057",
> "_"."aa0058",
> "_"."aa0059",
> "_"."aa0060",
> "_"."aa0061",
> "_"."aa0062",
> "_"."aa0063",
> "_"."aa0064",
> "_"."aa0065",
> "_"."aa0066",
> "_"."aa0067",
> "_"."aa0068",
> "_"."aa0069",
> "_"."aa0070",
> "_"."aa0071",
> "_"."aa0072",
> "_"."aa0073",
> "_"."aa0074",
> "_"."aa0075",
> "_"."aa0076",
> "_"."aa0077",
> "_"."aa0078",
> "_"."aa0079",
> "_"."aa0080",
> "_"."aa0081",
> "_"."aa0082",
> "_"."aa0083",
> "_"."aa0084",
> "_"."aa0085",
> "_"."aa0086",
> "_"."aa0087",
> "_"."aa0088",
> "_"."aa0089",
> "_"."aa0090",
> "_"."aa0091",
> "_"."aa0092",
> "_"."aa0093",
> "_"."aa0094",
> "_"."aa0095",
> "_"."aa0096",
> "_"."aa0097",
> "_"."aa0098",
> "_"."aa0099",
> "_"."aa0100",
> "_"."aa0101",
> "_"."aa0102",
> "_"."aa0103"
> from "public"."tbl1" "_"
> where ((("_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null or "_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null) or ("_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null or "_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null)) or ("_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null or "_"."aa0011" = U&'....\3000..st..' and "_"."aa0011" is not null)) and "_"."aa0014" is not null
> ) "_"
> ) "_""
> 2025-02-17 17:34:36: pid 2651623: WARNING: child process with pid: 3806414 was terminated by segmentation fault
>
>
> Regards,
> Inagaki.
More information about the pgpool-general
mailing list