Re: Numeric patch to add special-case representations for < 8 bytes
От | Bruce Momjian |
---|---|
Тема | Re: Numeric patch to add special-case representations for < 8 bytes |
Дата | |
Msg-id | 200703270107.l2R17fs16650@momjian.us обсуждение исходный текст |
Ответ на | Numeric patch to add special-case representations for < 8 bytes (Gregory Stark <stark@enterprisedb.com>) |
Ответы |
Re: Numeric patch to add special-case representations for < 8 bytes
|
Список | pgsql-patches |
Greg, do you want to submit a patch for this or add a TODO item for this? --------------------------------------------------------------------------- Gregory Stark wrote: > > I've uploaded a quick hack to store numerics in < 8 bytes when possible. > > http://community.enterprisedb.com/numeric-hack-1.patch > > This is a bit of a kludge since it doesn't actually provide any interface for > external clients of the numeric module to parse the resulting data. Ie, the > macros in numeric.h will return garbage. > > But I'm not entirely convinced that matters. It's not like those macros were > really useful to any other modules anyways since there was no way to extract > the actual digits. > > The patch is also slightly unsatisfactory because as I discovered numbers like > 1.1 are stored as two digits currently. But it does work and it does save a > substantial amount of space for integers. > > postgres=# select n,pg_column_size(n) from n; > n | pg_column_size > ----------+---------------- > 1 | 2 > 11 | 2 > 101 | 2 > 1001 | 3 > 10001 | 9 > 100001 | 9 > 1.1 | 9 > 10.1 | 9 > 100.1 | 9 > 1000.1 | 9 > 10000.1 | 11 > 100000.1 | 11 > > I had hoped to get the second batch to be 3-4 bytes. But even now note how > much space is saved for integers <10000. > > -- > Gregory Stark > EnterpriseDB http://www.enterprisedb.com > > ---------------------------(end of broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +
В списке pgsql-patches по дате отправления: