Cube extension types support

Поиск
Список
Период
Сортировка
От Stas Kelvich
Тема Cube extension types support
Дата
Msg-id 2FA9406C-E702-4A2F-8545-66726A1B5960@gmail.com
обсуждение исходный текст
Ответы Re: Cube extension types support  (Peter Eisentraut <peter_e@gmx.net>)
Список pgsql-hackers
Hello, hackers.

In this patch I've implemented support for different storage types for cubes. Now it supports float8, float4, int4,
int2,int1. Type stored in the header of each cube, one for all coordinates. So for cubes with int1 coordinates it can
saveup to 8x disk space. Typed cubes can be created in two ways: 

1) Via cube_suffix() functions, where suffix can be "f4", "i4", "i2", "i1", and arguments are two or one numbers or
arrays,i.e. 

# select cube_i1(1,2) as c;
     c
------------
 (1),(2):i1

# select cube_f4(array[1,2,3], array[5,6,7]) as c;
           c
------------------------
 (1, 2, 3),(5, 6, 7):f4

2) Via modificator in the end of string that will be casted to cube, i.e.

# select '(1,2,3):i2'::cube as c;
      c
--------------
 (1, 2, 3):i2

When no modificator given float8 will be used by default. Old-style cubes without type in header also treated as float8
forbackward compatibility. 

This patch changes a lot of things in code, so it interfere with others patches to the cube extension. I will update
thispatch, if other patches will be accepted to commit. 


Вложения

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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: logical changeset generation v6
Следующее
От: Steve Singer
Дата:
Сообщение: Re: logical changeset generation v6