Assertion failure with small block sizes
От | Gregory Stark |
---|---|
Тема | Assertion failure with small block sizes |
Дата | |
Msg-id | 877ilpu4zf.fsf@oxford.xeocode.com обсуждение исходный текст |
Ответы |
Re: Assertion failure with small block sizes
|
Список | pgsql-patches |
Testing Postgres with a small block size runs into an assertion failure when it tries to toast a pg_proc tuple during initdb. I think the assertion is just wrong and RELKIND_UNCATALOGUED is valid here. Other places in the code check for both before, for example, creating toast tables. creating template1 database in /home/stark/src/local-HEAD/pgsql/src/test/regress/./tmp_check/data/base/1 ... TRAP: FailedAssertion("!(rel->rd_rel->relkind== 'r')", File: "tuptoaster.c", Line: 440) --- tuptoaster.c 13 Oct 2007 22:34:06 +0100 1.78 +++ tuptoaster.c 14 Oct 2007 15:37:17 +0100 @@ -437,7 +437,8 @@ * We should only ever be called for tuples of plain relations --- * recursing on a toast rel is bad news. */ - Assert(rel->rd_rel->relkind == RELKIND_RELATION); + Assert(rel->rd_rel->relkind == RELKIND_RELATION || + rel->rd_rel->relkind == RELKIND_UNCATALOGED); /* * Get the tuple descriptor and break down the tuple(s) into fields. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com
В списке pgsql-patches по дате отправления: