Thread: pg_user backtrace -- with ElectricFence (looks useful :)

pg_user backtrace -- with ElectricFence (looks useful :)

From
"Taral"
Date:
(Resend - I sent it to pgsql-hackers@hub.org... wrong address?)

Compiled with Makefile.custom:

CFLAGS= -I$(SRCDIR)/include -I$(SRCDIR)/backend -O1 -g3
LDFLAGS:=-lefence $(LDFLAGS)

(gdb) where
#0  0x80dacfc in nodeHandleViewRule (nodePtr=0x40af1ffc, rtable=0x40b8bff4,
    targetlist=0x40b3bff4, rt_index=1, modified=0xbfffbb90, sublevels_up=0)
    at rewriteManip.c:636
#1  0x80dac8e in nodeHandleViewRule (nodePtr=0x40af9ff8, rtable=0x40b8bff4,
    targetlist=0x40b3bff4, rt_index=1, modified=0xbfffbb90, sublevels_up=0)
    at rewriteManip.c:596
#2  0x80dad2e in nodeHandleViewRule (nodePtr=0x40aabfe4, rtable=0x40b8bff4,
    targetlist=0x40b3bff4, rt_index=1, modified=0xbfffbb90, sublevels_up=0)
    at rewriteManip.c:648
#3  0x80dadd1 in HandleViewRule (parsetree=0x40aabfbc, rtable=0x40b8bff4,
    targetlist=0x40b3bff4, rt_index=1, modified=0xbfffbb90)
    at rewriteManip.c:695
#4  0x80d9c60 in ApplyRetrieveRule (parsetree=0x40aabfbc, rule=0x4064ffe8,
    rt_index=1, relation_level=1, relation=0x405dafc0, modified=0xbfffbb90)
    at rewriteHandler.c:333
#5  0x80d9b14 in FireRetrieveRulesAtQuery (parsetree=0x40aabfbc, rt_index=1,
    relation=0x405dafc0, instead_flag=0xbfffbc1f "", rule_flag=0)
    at rewriteHandler.c:238
#6  0x80d9d4b in ProcessRetrieveQuery (parsetree=0x40aabfbc,
    rtable=0x405e0ff4, instead_flag=0xbfffbc1f "", rule=0 '\000')
    at rewriteHandler.c:382
#7  0x80da3a5 in RewriteQuery (parsetree=0x405cefbc,
    instead_flag=0xbfffbc1f "", qual_products=0xbfffbc18)
    at rewriteHandler.c:873
#8  0x80da4ec in deepRewriteQuery (parsetree=0x405cefbc)
    at rewriteHandler.c:1008
#9  0x80da49d in QueryRewriteOne (parsetree=0x405cefbc) at
rewriteHandler.c:983
#10 0x80da3d3 in QueryRewrite (parsetree=0x405cefbc) at rewriteHandler.c:902
#11 0x80e7cd8 in pg_parse_and_plan (
    query_string=0xbfffdd14 "select * from pg_user\n", typev=0x0, nargs=0,
    queryListP=0xbfffdcc0, dest=Debug, aclOverride=0 '\000') at
postgres.c:503
#12 0x80e80a9 in pg_exec_query_dest (
    query_string=0xbfffdd14 "select * from pg_user\n", dest=Debug,
    aclOverride=0) at postgres.c:720
#13 0x80e806b in pg_exec_query (
    query_string=0xbfffdd14 "select * from pg_user\n") at postgres.c:697
#14 0x80e90d4 in PostgresMain (argc=3, argv=0xbffffd50, real_argc=3,
    real_argv=0xbffffd50) at postgres.c:1611
#15 0x80ab4cd in main (argc=3, argv=0xbffffd50) at main.c:103
(gdb) frame
#0  0x80dacfc in nodeHandleViewRule (nodePtr=0x40af1ffc, rtable=0x40b8bff4,
    targetlist=0x40b3bff4, rt_index=1, modified=0xbfffbb90, sublevels_up=0)
    at rewriteManip.c:636
636                                                     ((Var *)
*nodePtr)->varlevelsup = this_varlevelsup;
(gdb) print nodePtr
$1 = (Node **) 0x40af1ffc
(gdb) print *nodePtr
$2 = (Node *) 0x40b75fec

If you need anything else, just ask :)

JP Sugarbroad