[BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12, 9.6.3, sparc) - Mailing list pgsql-bugs

From Tom Turelinckx
Subject [BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12, 9.6.3, sparc)
Date
Msg-id 006b01d2eaa2$d4317be0$7c9473a0$@turelinckx.be
Whole thread Raw
Responses Re: [BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12,9.6.3, sparc)  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Re: [BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12, 9.6.3, sparc)  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: [BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12, 9.6.3, sparc)  (Greg Stark <stark@mit.edu>)
List pgsql-bugs
Hi,

I was trying to compile 9.4.12 on sparc from the debian source package in the pgdg repo, but it's failing multiple
regressiontests. One numeric test crashes the backend: 

LOG:  server process (PID 20659) was terminated by signal 10: Bus error
DETAIL:  Failed process was running: SELECT '' AS to_char_6,  to_char(val, 'FMS9999999999999999.999999999999999')
FROMnum_data; 

Reading symbols from /home/turelto/src/tmp/postgresql-9.4-9.4.12/build/src/backend/postgres...done.
[New LWP 20659]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/sparc-linux-gnu/libthread_db.so.1".
Core was generated by `postgres: turelto regression [local] SELECT                                   '.
Program terminated with signal 10, Bus error.
#0  NUM_numpart_to_char (id=3, Np=0xffa04a54)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/utils/adt/formatting.c:4419
4419                            if (Np->Num->lsign == NUM_LSIGN_PRE)
(gdb) l
4414                    (Np->num_curr >= Np->out_pre_spaces || (IS_ZERO(Np->Num) && Np->Num->zero_start ==
Np->num_curr))&& 
4415                    (IS_PREDEC_SPACE(Np) == FALSE || (Np->last_relevant && *Np->last_relevant == '.')))
4416            {
4417                    if (IS_LSIGN(Np->Num))
4418                    {
4419                            if (Np->Num->lsign == NUM_LSIGN_PRE)
4420                            {
4421                                    if (Np->sign == '-')
4422                                            strcpy(Np->inout_p, Np->L_negative_sign);
4423                                    else
(gdb) bt full
#0  NUM_numpart_to_char (id=3, Np=0xffa04a54)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/utils/adt/formatting.c:4419      end = <optimized out> 
#1  NUM_processor (node=<optimized out>, Num=<optimized out>, inout=<optimized out>, number=<optimized out>,
from_char_input_len=0,to_char_out_pre_spaces=<optimized out>, sign=43, is_to_char=1 '\001',    collid=<optimized out>)
at /home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/utils/adt/formatting.c:4773       n = <optimized
out>      _Np = {is_to_char = 1 '\001', Num = 0xffa04b18, sign = 43, sign_wrote = 0, num_count = 30, num_in = 0,
 num_curr = 15, out_pre_spaces = 15, read_dec = 0, read_post = 0, read_pre = 0,          number = 0x61b440 "0.", '0'
<repeats15 times>, number_p = 0x61b440 "0.", '0' <repeats 15 times>,          inout = 0x61b1d4 "", inout_p = 0x61b1d4
"",last_relevant = 0x61b441 ".", '0' <repeats 15 times>,          L_negative_sign = 0x4c1438 "-", L_positive_sign =
0x3f5638"+", decimal = 0x4cd530 ".",          L_thousands_sep = 0x49dd78 ",", L_currency_symbol = 0x4edd08 " "} 
#2  0x002f2920 in numeric_to_char (fcinfo=0x618bd4)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/utils/adt/formatting.c:5181      len = <optimized out>
     value = <optimized out>       fmt = <optimized out>       Num = {pre = 16, post = 15, lsign = -1, flag = 98,
pre_lsign_num= 0, multi = 0, zero_start = 0, zero_end = 0,          need_locale = 1}       format = 0x540d30
result= 0x61b1d0       shouldFree = <optimized out>       out_pre_spaces = <optimized out>       sign = 43       numstr
=0x61b440 "0.", '0' <repeats 15 times>       orgnum = <optimized out>       p = <optimized out>       x = <optimized
out>
#3  0x001aa0f0 in ExecMakeFunctionResultNoSets (fcache=0x618b98, econtext=0x618ab8, isNull=0x619721 "",
isDone=<optimizedout>)   at /home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execQual.c:2026
   arg = <optimized out>       result = <optimized out>       fcinfo = 0x618bd4       fcusage = {fs = 0x0,
save_f_total_time= {tv_sec = 0, tv_usec = 0}, save_total = {tv_sec = 0, tv_usec = 0},          f_start = {tv_sec = 0,
tv_usec= 0}}       i = <optimized out> 
#4  0x001ae258 in ExecTargetList (isDone=0xffa04c84, itemIsDone=0x6197d8, isnull=0x619720 "", values=0x619710,
econtext=0x618ab8,targetlist=0x6197b0)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execQual.c:5334      gstate = <optimized out>
     tle = <optimized out>       resind = <optimized out>       oldContext = 0x5f6640       tl = 0x6197c8
haveDoneSets= <optimized out> 
#5  ExecProject (projInfo=<optimized out>, isDone=0xffa04c84)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execQual.c:5549      slot = 0x619018
econtext= 0x618ab8       numSimpleVars = <optimized out> 
#6  0x001ae650 in ExecScan (node=0x618a30, accessMtd=0x1bfc80 <SeqNext>, recheckMtd=0x1bfc60 <SeqRecheck>)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execScan.c:207      slot = 0x619088
econtext= 0x618ab8       qual = 0x0       projInfo = 0x619730       isDone = ExprSingleResult       resultSlot =
<optimizedout> 
#7  0x001a7650 in ExecProcNode (node=0x618a30)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execProcnode.c:400      result = <optimized
out>      __func__ = "ExecProcNode" 
#8  0x001a443c in ExecutePlan (dest=0x5d11f8, direction=<optimized out>, numberTuples=0, sendTuples=<optimized out>,
operation=CMD_SELECT,planstate=0x618a30, estate=0x6189a8)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execMain.c:1490      slot = <optimized out>
   current_tuple_count = 0 
#9  standard_ExecutorRun (queryDesc=0x605f88, direction=<optimized out>, count=0)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/executor/execMain.c:319      estate = 0x6189a8
operation= CMD_SELECT       dest = 0x5d11f8       sendTuples = <optimized out>       oldcontext = 0x5f66f0 
#10 0x002ac734 in PortalRunSelect (portal=0x5fb768, forward=1 '\001', count=0, dest=0x5d11f8)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/tcop/pquery.c:942      queryDesc = 0x605f88
direction= ForwardScanDirection       nprocessed = <optimized out>       __func__ = "PortalRunSelect" 
#11 0x002adabc in PortalRun (portal=0x5fb768, count=2147483647, isTopLevel=1 '\001', dest=0x5d11f8, altdest=0x5d11f8,
completionTag=0xffa05040 "") at /home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/tcop/pquery.c:786
save_exception_stack = 0xffa04f84       save_context_stack = 0x0       local_sigjmp_buf = {{__jmpbuf = {-285518332,
-285518572,292667848}, __mask_was_saved = 0, __saved_mask = {             __val = {4288696024, 5679664, 16777218, 0,
13,1076, 0, 0, 5611552, 5614592, 5459968, 5611520, 5397504,                120, 5681576, 1886539776, 6097184, 0, 0, 0,
0,6097168, 4288696024, 2792652, 90, 6247456, 2, 1, 0, 1,                1024, 0}}}}       result = <optimized out>
nprocessed = <optimized out>       saveTopTransactionResourceOwner = 0x56aa30 
---Type <return> to continue, or q <return> to quit---       saveTopTransactionContext = 0x56ab38
saveActivePortal= 0x0       saveResourceOwner = 0x56aa30       savePortalContext = 0x0       saveMemoryContext =
0x56ab38      __func__ = "PortalRun" 
#12 0x002a9ba4 in exec_simple_query (   query_string=0x5cf4d8 "SELECT '' AS to_char_6,  to_char(val, 'FMS", '9'
<repeats16 times>, ".", '9' <repeats 15 times>, "')    FROM num_data;") at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/tcop/postgres.c:1072      parsetree = 0x5d00e8
portal= 0x5fb768       snapshot_set = <optimized out>       commandTag = <optimized out>       completionTag =
"\000ELECT10\000\000E", '\000' <repeats 35 times>, "\024\000\000\000\024\377\377\377\377\000R\\\304\000R\\P"
plantree_list= 0x5d11e0       receiver = 0x5d11f8       format = 0       dest = DestRemote       parsetree_list =
0x5d0180      save_log_statement_stats = 0 '\000'       was_logged = 0 '\000'       msec_str =
"\000\240P\250\000\006\004\320\000\000\000\000\000X\324d0\n\000\034",'\000' <repeats 11 times>, "\002"
parsetree_item= 0x5d0170       isTopLevel = <optimized out> 
#13 PostgresMain (argc=<optimized out>, argv=<optimized out>, dbname=0x5694a0 "regression", username=<optimized out>)
at/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/tcop/postgres.c:4100       query_string = 0x5cf4d8
"SELECT'' AS to_char_6,  to_char(val, 'FMS", '9' <repeats 16 times>, ".", '9' <repeats 15 times>, "')    FROM
num_data;"      firstchar = 6095080       input_message = {         data = 0x5cf4d8 "SELECT '' AS to_char_6,
to_char(val,'FMS", '9' <repeats 16 times>, ".", '9' <repeats 15 times>, "')    FROM num_data;", len = 95, maxlen =
1024,cursor = 95}       local_sigjmp_buf = {{__jmpbuf = {-285518572, -285521052, 292654784}, __mask_was_saved = 1,
__saved_mask= {             __val = {0, 0, 0, 0, 1882663060, 1879054856, 1881810088, 0, 1, 0, 0, 0, 1881097612, 4, 0,
0,0, 0, 0, 0,                1886539776, 1886551248, 1886551248, 5821840, 0, 0, 0, 4288696392, 1885505112, 4288696368,
2364184,               0}}}}       send_ready_for_query = 0 '\000'       __func__ = "PostgresMain" 
#14 0x000606b0 in BackendRun (port=0x58d3d8)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/postmaster/postmaster.c:4301      ac = 1       secs =
551365461      usecs = 297758       i = 1       av = 0x569610       maxac = <optimized out> 
#15 BackendStartup (port=0x58d3d8)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/postmaster/postmaster.c:3964      bn = 0x10c3
pid= 0 
#16 ServerLoop () at /home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/postmaster/postmaster.c:1694
port = 0x58d3d8       rmask = {fds_bits = {16, 0 <repeats 31 times>}}       selres = <optimized out>       now =
<optimizedout>       readmask = {fds_bits = {16, 0 <repeats 31 times>}}       nSockets = 5
last_lockfile_recheck_time= 1498050259       last_touch_time = 1498050259       __func__ = "ServerLoop" 
#17 0x0024d334 in PostmasterMain (argc=8, argv=<optimized out>)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/postmaster/postmaster.c:1302      opt = <optimized
out>      status = <optimized out>       userDoption = <optimized out>       listen_addr_saved = <optimized out>
i= <optimized out>       output_config_variable = <optimized out>       __func__ = "PostmasterMain" 
#18 0x000616f0 in main (argc=8, argv=0x568b88)   at
/home/turelto/src/tmp/postgresql-9.4-9.4.12/build/../src/backend/main/main.c:233
No locals.


It seems this issue was introduced in 9.4.9: 9.4.9, 9.4.10, 9.4.11 and 9.4.12 all crash at the same test at the same
linein formatting.c, but 9.4.8 builds successfully and passes all tests. It also seems that both NUM_numpart_to_char
andthe failing test have not been touched for, eh, decades, so the root cause must be somewhere else. 

The same issue is present in 9.6.3:

LOG:  server process (PID 10632) was terminated by signal 10: Bus error
DETAIL:  Failed process was running: SELECT '' AS to_char_6,  to_char(val, 'FMS9999999999999999.999999999999999')
FROMnum_data; 

Reading symbols from /home/turelto/src/tmp/postgresql-9.6-9.6.3/build/src/backend/postgres...done.
[New LWP 10632]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/sparc-linux-gnu/libthread_db.so.1".
Core was generated by `postgres: turelto regression [local] SELECT                                   '.
Program terminated with signal 10, Bus error.
#0  NUM_numpart_to_char (id=3, Np=0xff924b5c)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/utils/adt/formatting.c:4434
4434                            if (Np->Num->lsign == NUM_LSIGN_PRE)
(gdb) l
4429                    (Np->num_curr >= Np->out_pre_spaces || (IS_ZERO(Np->Num) && Np->Num->zero_start ==
Np->num_curr))&& 
4430                    (IS_PREDEC_SPACE(Np) == FALSE || (Np->last_relevant && *Np->last_relevant == '.')))
4431            {
4432                    if (IS_LSIGN(Np->Num))
4433                    {
4434                            if (Np->Num->lsign == NUM_LSIGN_PRE)
4435                            {
4436                                    if (Np->sign == '-')
4437                                            strcpy(Np->inout_p, Np->L_negative_sign);
4438                                    else
(gdb) bt full
#0  NUM_numpart_to_char (id=3, Np=0xff924b5c)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/utils/adt/formatting.c:4434      end = <optimized out> 
#1  NUM_processor (node=<optimized out>, Num=<optimized out>, inout=<optimized out>, number=<optimized out>,
from_char_input_len=0,to_char_out_pre_spaces=<optimized out>, sign=43, is_to_char=1 '\001',    collid=<optimized out>)
at /home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/utils/adt/formatting.c:4788       n = <optimized
out>      _Np = {is_to_char = 1 '\001', Num = 0xff924c20, sign = 43, sign_wrote = 0, num_count = 30, num_in = 0,
 num_curr = 15, out_pre_spaces = 15, read_dec = 0, read_post = 0, read_pre = 0,          number = 0x6bdac0 "0.", '0'
<repeats15 times>, number_p = 0x6bdac0 "0.", '0' <repeats 15 times>,          inout = 0x6bd854 "", inout_p = 0x6bd854
"",last_relevant = 0x6bdac1 ".", '0' <repeats 15 times>,          L_negative_sign = 0x555908 "-", L_positive_sign =
0x4789d8"+", decimal = 0x565d10 ".",          L_thousands_sep = 0x52ed18 ",", L_currency_symbol = 0x588920 " "} 
#2  0x00354920 in numeric_to_char (fcinfo=0x6bbae4)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/utils/adt/formatting.c:5213      len = <optimized out>
    value = <optimized out>       fmt = <optimized out>       Num = {pre = 16, post = 15, lsign = -1, flag = 98,
pre_lsign_num= 0, multi = 0, zero_start = 0, zero_end = 0,          need_locale = 1}       format = 0x5dc09c
result= 0x6bd850       shouldFree = <optimized out>       out_pre_spaces = <optimized out>       sign = 43       numstr
=0x6bdac0 "0.", '0' <repeats 15 times>       orgnum = <optimized out>       p = <optimized out>       x = <optimized
out>
#3  0x001e16b0 in ExecMakeFunctionResultNoSets (fcache=0x6bbaa8, econtext=0x6bb9c8, isNull=0x6bc229 "",
isDone=<optimizedout>) at /home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execQual.c:2041
arg = <optimized out>       result = <optimized out>       fcinfo = 0x6bbae4       fcusage = {fs = 0x0,
save_f_total_time= {tv_sec = 1, tv_usec = 0}, save_total = {tv_sec = 0, tv_usec = 0},          f_start = {tv_sec = 0,
tv_usec= 0}}       i = <optimized out> 
#4  0x001e5840 in ExecTargetList (isDone=0xff924d8c, itemIsDone=0x6bc2e0, isnull=0x6bc228 "", values=0x6bc218,
econtext=0x6bb9c8,tupdesc=<optimized out>, targetlist=0x6bc2b8)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execQual.c:5423      gstate = <optimized out>
    tle = <optimized out>       resind = <optimized out>       att = 0x6bc02c       oldContext = 0x655430       tl =
0x6bc2d0      haveDoneSets = <optimized out> 
#5  ExecProject (projInfo=<optimized out>, isDone=0xff924d8c)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execQual.c:5647      slot = 0x6bbf28
econtext= 0x6bb9c8       numSimpleVars = <optimized out> 
#6  0x001e5c84 in ExecScan (node=0x6bb940, accessMtd=0x1faec0 <SeqNext>, recheckMtd=0x1faea0 <SeqRecheck>)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execScan.c:220      slot = 0x6bbf98
econtext= 0x6bb9c8       qual = 0x0       projInfo = 0x6bc238       isDone = ExprSingleResult       resultSlot =
<optimizedout> 
#7  0x001de620 in ExecProcNode (node=0x6bb940)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execProcnode.c:419      result = <optimized
out>      __func__ = "ExecProcNode" 
#8  0x001da304 in ExecutePlan (dest=0x69c620, direction=<optimized out>, numberTuples=0, sendTuples=<optimized out>,
operation=CMD_SELECT,use_parallel_mode=<optimized out>, planstate=0x6bb940, estate=0x6bb838)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execMain.c:1569      slot = <optimized out>
  current_tuple_count = 0 
#9  standard_ExecutorRun (queryDesc=0x6a61f8, direction=<optimized out>, count=<optimized out>)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/executor/execMain.c:338      estate = 0x6bb838
operation= CMD_SELECT       dest = 0x69c620       sendTuples = <optimized out>       oldcontext = 0x6549b0 
#10 0x0030606c in PortalRunSelect (portal=0x6233a0, forward=<optimized out>, count=0, dest=0x69c620)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/tcop/pquery.c:948      queryDesc = 0x6a61f8
direction= <optimized out>       nprocessed = <optimized out>       __func__ = "PortalRunSelect" 
#11 0x0030747c in PortalRun (portal=0x6233a0, count=2147483647, isTopLevel=1 '\001', dest=0x69c620, altdest=0x69c620,
completionTag=0xff925160 "") at /home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/tcop/pquery.c:789
save_exception_stack= 0xff9250a4       save_context_stack = 0x0       local_sigjmp_buf = {{__jmpbuf = {-488613709,
-488613485,490890671}, __mask_was_saved = 0, __saved_mask = {             __val = {16797688, 6621224, 2, 0, 6165432,
931,0, 0, 6165432, 6168576, 6094848, 6165504, 6053888, 120,                6320304, 1886343168, 6812424, 256, 0, 0, 0,
6812408,4287778808, 3159308, 97, 1130710192, 2, 1, 0, 1,                1024, 0}}}}       result = <optimized out>
nprocessed = <optimized out>       saveTopTransactionResourceOwner = 0x650828       saveTopTransactionContext =
0x655298      saveActivePortal = 0x0       saveResourceOwner = 0x650828       savePortalContext = 0x0
saveMemoryContext= 0x655298       __func__ = "PortalRun" 
#12 0x003033e4 in exec_simple_query (   query_string=0x67dec0 "SELECT '' AS to_char_6,  to_char(val, 'FMS", '9'
<repeats16 times>, ".", '9' <repeats 15 times>, "')    FROM num_data;") at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/tcop/postgres.c:1094      parsetree = 0x67ead0
portal= 0x6233a0       snapshot_set = <optimized out>       commandTag = <optimized out>       completionTag =
"\000ELECT10\000\000E", '\000' <repeats 35 times>, "\024\000\000\000\024\377\377\377\377\000]\000\364\000\\\377",
<incompletesequence \364>       plantree_list = 0x69c608       receiver = 0x69c620       format = 0       dest =
DestRemote      parsetree_list = 0x67eb68       save_log_statement_stats = 0 '\000'       was_logged = 0 '\000'
msec_str= "\000\222Q\310\000\006\324\344\000bs\244\000bt$\000\000\000\034\000\000\000 \000bG0\000\000\000"
parsetree_item= 0x67eb58       isTopLevel = <optimized out> 
#13 PostgresMain (argc=<optimized out>, argv=<optimized out>, dbname=0x606c70 "regression", username=<optimized out>)
at/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/tcop/postgres.c:4076       query_string = 0x67dec0
"SELECT'' AS to_char_6,  to_char(val, 'FMS", '9' <repeats 16 times>, ".", '9' <repeats 15 times>, "')    FROM
num_data;"      firstchar = 6810320       input_message = {         data = 0x67dec0 "SELECT '' AS to_char_6,
to_char(val,'FMS", '9' <repeats 16 times>, ".", '9' <repeats 15 times>, "')    FROM num_data;", len = 95, maxlen =
1024,cursor = 95}       local_sigjmp_buf = {{__jmpbuf = {-488613485, -488618077, 490879835}, __mask_was_saved = 1,
__saved_mask= {             __val = {0, 0, 0, 0, 1882908820, 4287779072, 1879209388, 0, 0, 0, 1882908820, 1879054832,
1882055848,4,                0, 0, 0, 0, 4287779152, 0, 0, 0, 0, 0, 0, 0, 0, 1498055587, 0, 0, 4294967295, 6052864}}}}
    send_ready_for_query = 0 '\000'       disable_idle_in_transaction_timeout = 0 '\000'       __func__ =
"PostgresMain"
#14 0x0006d6c8 in BackendRun (port=0x627398)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/postmaster/postmaster.c:4285      ac = 1       secs =
551370787      usecs = 396920       i = 1       av = 0x62da48       maxac = <optimized out> 
#15 BackendStartup (port=0x627398)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/postmaster/postmaster.c:3959      bn = 0x10b3       pid
=0 
#16 ServerLoop () at /home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/postmaster/postmaster.c:1715
port= 0x627398       rmask = {fds_bits = {16, 0 <repeats 31 times>}}       selres = <optimized out>       now =
<optimizedout>       readmask = {fds_bits = {16, 0 <repeats 31 times>}}       nSockets = 5
last_lockfile_recheck_time= 1498055585       last_touch_time = 1498055585       __func__ = "ServerLoop" 
#17 0x0029ba3c in PostmasterMain (argc=8, argv=<optimized out>)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/postmaster/postmaster.c:1323      opt = <optimized out>
     status = <optimized out>       userDoption = <optimized out>       listen_addr_saved = <optimized out>       i =
<optimizedout>       output_config_variable = <optimized out>       __func__ = "PostmasterMain" 
#18 0x0006e6d8 in main (argc=8, argv=0x604af8)   at
/home/turelto/src/tmp/postgresql-9.6-9.6.3/build/../src/backend/main/main.c:228
No locals.


A potentially similar issue was introduced in 9.4.7 and resolved in 9.4.8:

https://www.postgresql.org/message-id/20160413094117.GC21485@msg.credativ.de

I can test patches or provide more information.

Best regards,
Tom Turelinckx




--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

pgsql-bugs by date:

Previous
From: cliveevans@ntlworld.com
Date:
Subject: [BUGS] BUG #14715: Constraint exclusion isn't used in function usinglanguage sql
Next
From: Alvaro Herrera
Date:
Subject: Re: [BUGS] Bus error in formatting.c NUM_numpart_to_char (9.4.12,9.6.3, sparc)