trap instead of error on 32 TiB table

Поиск
Список
Период
Сортировка
От Christoph Berg
Тема trap instead of error on 32 TiB table
Дата
Msg-id YTn1iTkUYBZfcODk@msg.credativ.de
обсуждение исходный текст
Ответы Re: trap instead of error on 32 TiB table  (Robert Haas <robertmhaas@gmail.com>)
Re: trap instead of error on 32 TiB table  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
I was wondering what happens when the 32 TiB per table limit is
reached, so I faked 32767 1 GiB sparse files using dd and then tried
inserting more rows.

On a cassert-enabled build I got:

TRAP: FailedAssertion("tagPtr->blockNum != P_NEW", File: "./build/../src/backend/storage/buffer/buf_table.c", Line:
125)

On a normal build, I got:

ERROR:  cannot extend file "base/18635/53332" beyond 4294967295 blocks
ORT:  mdextend, md.c:443

Shouldn't the cassert build raise the ERROR instead as well?

PostgreSQL 13.4.

Christoph
-- 
Senior Consultant, Tel.: +49 2166 9901 187
credativ GmbH, HRB Mönchengladbach 12080, USt-ID-Nummer: DE204566209
Trompeterallee 108, 41189 Mönchengladbach
Geschäftsführung: Dr. Michael Meskes, Sascha Heuer, Geoff Richardson,
Peter Lilley; Unser Umgang mit personenbezogenen Daten unterliegt
folgenden Bestimmungen: https://www.credativ.de/datenschutz



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Ranier Vilela
Дата:
Сообщение: Re: missing warning in pg_import_system_collations
Следующее
От: Peter Eisentraut
Дата:
Сообщение: Re: Why does bootstrap and later initdb stages happen via client?