Re: Re: [COMMITTERS] pgsql: Reduce WAL activity for page splits: > Currently, an index split
От | Heikki Linnakangas |
---|---|
Тема | Re: Re: [COMMITTERS] pgsql: Reduce WAL activity for page splits: > Currently, an index split |
Дата | |
Msg-id | 45CAEB7B.1000805@enterprisedb.com обсуждение исходный текст |
Ответ на | Re: [COMMITTERS] pgsql: Reduce WAL activity for page splits: > Currently, an index split (Stefan Kaltenbrunner <stefan@kaltenbrunner.cc>) |
Список | pgsql-hackers |
Stefan Kaltenbrunner wrote: > Bruce Momjian wrote: >> Log Message: >> ----------- >> Reduce WAL activity for page splits: >> >>> Currently, an index split writes all the data on the split page to >>> WAL. That's a lot of WAL traffic. The tuples that are copied to the >>> right page need to be WAL logged, but the tuples that stay on the >>> original page don't. > > > this patch killed both of my OpenBSD buildfarm members Sorry about that.. I'll take a look at it. > > a backtrace of the crash shows: > > (gdb) bt > #0 0x1c055504 in _bt_split (rel=0x835fcab0, buf=53, firstright=50, > newitemoff=54, newitemsz=76, > newitem=0x8210a364, newitemonleft=0 '\0') at nbtinsert.c:956 > #1 0x1c05468b in _bt_insertonpg (rel=0x835fcab0, buf=53, > stack=0x8210a078, keysz=2, scankey=0x8210a3f0, > itup=0x8210a364, afteritem=0, split_only_page=0 '\0') at > nbtinsert.c:538 > #2 0x1c053fae in _bt_doinsert (rel=0x835fcab0, itup=0x8210a364, > index_is_unique=1 '\001', heapRel=0x7ec0ee7c) > at nbtinsert.c:141 > #3 0x1c05a1c4 in btinsert (fcinfo=0x2) at nbtree.c:224 > #4 0x1c2028fc in FunctionCall6 (flinfo=0x8bc6d1f0, arg1=2, arg2=2, > arg3=2, arg4=2, arg5=2, arg6=2) at fmgr.c:1267 > #5 0x1c052d20 in index_insert (indexRelation=0x835fcab0, > values=0xcf7defd0, isnull=0xcf7df050 "", > heap_t_ctid=0x7df53e50, heapRelation=0x7ec0ee7c, check_uniqueness=1 > '\001') at indexam.c:196 > #6 0x1c08f87e in CatalogIndexInsert (indstate=0x2, > heapTuple=0x8210a224) at indexing.c:124 > #7 0x1c08f902 in CatalogUpdateIndexes (heapRel=0x7ec0ee7c, > heapTuple=0x7df53e4c) at indexing.c:149 > #8 0x1c17255c in SetRelationRuleStatus (relationId=10951, relHasRules=1 > '\001', relIsBecomingView=0 '\0') > at rewriteSupport.c:80 > #9 0x1c16f074 in DefineQueryRewrite (stmt=0x82ca7e78) at > rewriteDefine.c:432 > #10 0x1c18c822 in PortalRunUtility (portal=0x82cb201c, query=0x81897484, > dest=0x3c0c8ff4, > completionTag=0xcf7df2a0 "") at pquery.c:1063 > #11 0x1c18cb12 in PortalRunMulti (portal=0x82cb201c, dest=0x3c0c8ff4, > altdest=0x3c0c8ff4, > completionTag=0xcf7df2a0 "") at pquery.c:1131 > #12 0x1c18c28a in PortalRun (portal=0x82cb201c, count=2147483647, > dest=0x3c0c8ff4, altdest=0x3c0c8ff4, > completionTag=0xcf7df2a0 "") at pquery.c:700 > #13 0x1c187d13 in exec_simple_query ( > query_string=0x84a2501c "/*\n * PostgreSQL System Views\n *\n * > Copyright (c) 1996-2007, PostgreSQL Global Development Group\n *\n * > $PostgreSQL: pgsql/src/backend/catalog/system_views.sql,v 1.35 > 2007/01/05 22:19:25 momjian Exp $\n"...) at postgres.c:939 > #14 0x1c18abb2 in PostgresMain (argc=1, argv=0xcf7df480, > username=0x80ba55b0 "mastermind") at postgres.c:3423 > #15 0x1c122102 in main (argc=10, argv=0xcf7df47c) at main.c:186 > > > Stefan > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: