On Mon, Sep 16, 2013 at 3:47 AM, Thom Brown <[email protected]> wrote:
> On 15 September 2013 01:14, Alvaro Herrera <[email protected]> wrote:
>>
>> Hi,
>>
>> Here's a reviewable version of what I've dubbed Minmax indexes.
>>
> Thanks for the patch, but I seem to have immediately hit a snag:
>
> pgbench=# CREATE INDEX minmaxtest ON pgbench_accounts USING minmax (aid);
> PANIC: invalid xlog record length 0
>
fwiw, this seems to be triggered by ANALYZE.
At least i can trigger it by executing ANALYZE on the table (attached
is a stacktrace of a backend exhibiting the failure)
Another thing is this messages i got when compiling:
"""
mmxlog.c: In function ‘minmax_xlog_revmap_set’:
mmxlog.c:161:14: warning: unused variable ‘blkno’ [-Wunused-variable]
bufpage.c: In function ‘PageIndexDeleteNoCompact’:
bufpage.c:1066:18: warning: ‘lastused’ may be used uninitialized in
this function [-Wmaybe-uninitialized]
"""
--
Jaime Casanova www.2ndQuadrant.com
Professional PostgreSQL: Soporte 24x7 y capacitación
Phone: +593 4 5107566 Cell: +593 987171157
Program received signal SIGABRT, Aborted.
0x00007f4428819475 in *__GI_raise (sig=<optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No existe el fichero o el
directorio.
(gdb) bt
#0 0x00007f4428819475 in *__GI_raise (sig=<optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007f442881c6f0 in *__GI_abort () at abort.c:92
#2 0x000000000076d6ac in errfinish (dummy=dummy@entry=0) at elog.c:546
#3 0x000000000076fdca in elog_finish (elevel=elevel@entry=22,
fmt=fmt@entry=0x7d2aa7 "invalid xlog record length %u") at elog.c:1304
#4 0x00000000004e1eba in XLogInsert (rmid=rmid@entry=17 '\021',
info=info@entry=48 '0', rdata=rdata@entry=0x7fffc836ea10) at xlog.c:966
#5 0x00000000004a9bb9 in mmSetHeapBlockItemptr
(rmAccess=rmAccess@entry=0x1b3af38, heapBlk=heapBlk@entry=0,
blkno=blkno@entry=6, offno=offno@entry=1)
at mmrevmap.c:169
#6 0x00000000004a73e8 in mm_doinsert (idxrel=0x7f4429054c88,
rmAccess=0x1b3af38, buffer=buffer@entry=0x7f441f7e718c, heapblkno=0,
tup=tup@entry=0x7f441f84cff8,
itemsz=16) at minmax.c:1410
#7 0x00000000004a9464 in rerun_summarization (numnonsummarized=22,
nonsummarized=0x1b3a408, rmAccess=0x1b3af38, heapRel=0x7f4429052e68,
idxRel=0x7f4429054c88)
at minmax.c:1205
#8 mmvacuumcleanup (fcinfo=<optimized out>) at minmax.c:1268
#9 0x000000000077388f in FunctionCall2Coll
(flinfo=flinfo@entry=0x7fffc836f0a0, collation=collation@entry=0,
arg1=arg1@entry=140736552432368, arg2=arg2@entry=0)
at fmgr.c:1326
#10 0x00000000004a6c2d in index_vacuum_cleanup (info=info@entry=0x7fffc836f2f0,
stats=stats@entry=0x0) at indexam.c:715
#11 0x00000000005570d1 in do_analyze_rel (onerel=onerel@entry=0x7f4429052e68,
acquirefunc=0x556020 <acquire_sample_rows>, relpages=45, inh=inh@entry=0
'\000',
elevel=elevel@entry=13, vacstmt=<error reading variable: Unhandled dwarf
expression opcode 0xfa>,
vacstmt=<error reading variable: Unhandled dwarf expression opcode 0xfa>)
at analyze.c:634
#12 0x0000000000557fef in analyze_rel (relid=relid@entry=16384,
vacstmt=vacstmt@entry=0x1af5678, bstrategy=<optimized out>) at analyze.c:267
---Type <return> to continue, or q <return> to quit---
#13 0x00000000005aa224 in vacuum (vacstmt=vacstmt@entry=0x1af5678,
relid=relid@entry=0, do_toast=do_toast@entry=1 '\001', bstrategy=<optimized
out>,
bstrategy@entry=0x0, for_wraparound=for_wraparound@entry=0 '\000',
isTopLevel=isTopLevel@entry=1 '\001') at vacuum.c:249
#14 0x000000000069f417 in standard_ProcessUtility (parsetree=0x1af5678,
queryString=<optimized out>, context=<optimized out>, params=0x0,
dest=<optimized out>,
completionTag=<optimized out>) at utility.c:682
#15 0x000000000069c587 in PortalRunUtility (portal=0x1b33198,
utilityStmt=0x1af5678, isTopLevel=1 '\001', dest=0x1af5a00,
completionTag=0x7fffc836f920 "")
at pquery.c:1187
#16 0x000000000069d299 in PortalRunMulti (portal=portal@entry=0x1b33198,
isTopLevel=isTopLevel@entry=1 '\001', dest=dest@entry=0x1af5a00,
altdest=altdest@entry=0x1af5a00,
completionTag=completionTag@entry=0x7fffc836f920 "") at pquery.c:1318
#17 0x000000000069df32 in PortalRun (portal=portal@entry=0x1b33198,
count=count@entry=9223372036854775807, isTopLevel=isTopLevel@entry=1 '\001',
dest=dest@entry=0x1af5a00, altdest=altdest@entry=0x1af5a00,
completionTag=completionTag@entry=0x7fffc836f920 "") at pquery.c:816
#18 0x000000000069afdb in exec_simple_query (query_string=0x1af4c18 "analyze
t1;") at postgres.c:1048
#19 PostgresMain (argc=<optimized out>, argv=argv@entry=0x1ab0a70,
dbname=0x1ab08f0 "postgres", username=<optimized out>) at postgres.c:3992
#20 0x000000000046559e in BackendRun (port=0x1ab2770) at postmaster.c:4083
#21 BackendStartup (port=0x1ab2770) at postmaster.c:3772
#22 ServerLoop () at postmaster.c:1583
#23 0x000000000065230e in PostmasterMain (argc=argc@entry=3,
argv=argv@entry=0x1a8df00) at postmaster.c:1239
#24 0x0000000000465ec5 in main (argc=3, argv=0x1a8df00) at main.c:196
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers