From: | "Daniel Westermann (DWE)" <daniel(dot)westermann(at)dbi-services(dot)com> |
---|---|
To: | "pgsql-docs(at)lists(dot)postgresql(dot)org" <pgsql-docs(at)lists(dot)postgresql(dot)org> |
Subject: | Incorrect mention of number of columns? |
Date: | 2023-11-03 16:09:33 |
Message-ID: | GV0P278MB04193C52A42F4F860F34D707D2A5A@GV0P278MB0419.CHEP278.PROD.OUTLOOK.COM |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-docs |
Hi,
from the limits page in the docs: https://www.postgresql.org/docs/current/limits.html
"...but a tuple of 1600 bigint columns would consume 12800 bytes and would therefore not fit inside a heap page".
Creating a table with 1600 bigint columns does work with a 8k blocksize:
$ cat gen_tab.sh
#!/bin/bash
AMOUNT_OF_COLS=$1
DATA_TYPE=$2
STATEMENT="create table t ( "
for (( i=1 ; i<${AMOUNT_OF_COLS} ; i++ ));
do
STATEMENT+=" col${i} ${DATA_TYPE},"
done
STATEMENT+="col${AMOUNT_OF_COLS} ${DATA_TYPE} );"
echo ${STATEMENT}
.$ /gen_tab.sh 1600 bigint > a.sql
$ psql -f a.sql
CREATE TABLE
$ psql -c "\d t"
...
col1598 | bigint | | |
col1599 | bigint | | |
col1600 | bigint | | |
Am I missing something?
Regards
Daniel
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2023-11-03 16:12:14 | Re: Incorrect mention of number of columns? |
Previous Message | Laurenz Albe | 2023-11-03 15:23:07 | Re: Document target_role param of ALTER DEFAULT PRIVILEGES |