On Sat, Jul 03, 2021 at 10:46:55AM -0700, Paul A Jungwirth wrote:
> On Fri, Jul 2, 2021 at 2:39 PM Paul A Jungwirth
> <[email protected]> wrote:
> >
> > On Wed, Jun 30, 2021 at 10:39 AM Paul A Jungwirth
> > <[email protected]> wrote:
> > > Here is a set of patches to add SQL:2011 application-time support (aka
> > > valid-time).
> >
> > Here is a small fix to prevent `FOR PORTION OF valid_at FROM MAXVALUE
> > TO foo` or `FROM foo TO MINVALUE`. I rebased on latest master too.
>
> Here is a patch set that cleans up the catalog docs for pg_period. The
> columns have changed since that was written, and also we use a
> different sgml structure on those pages now. Note pg_period still
> contains a couple essentially-unused columns, perislocal and
> perinhcount. Those are intended for supporting table inheritance, so
> I've left them in.
>
Hi Paul,
Thanks for working on this. It would be a great improvement.
I wanted to test the patches but:
patch 01: does apply but doesn't compile, attached the compile errors.
patch 04: does not apply clean.
Please fix and resend.
--
Jaime Casanova
Director de Servicios Profesionales
SystemGuards - Consultores de PostgreSQL
parse_utilcmd.c: En la función ‘generateClonedIndexStmt’:
parse_utilcmd.c:1730:2: aviso: ISO C90 prohíbe mezclar declaraciones y código
[-Wdeclaration-after-statement]
Period *p = makeNode(Period);
^~~~~~
tablecmds.c: En la función ‘ATPrepCmd’:
tablecmds.c:4637:24: error: tipo incompatible para el argumento 1 de
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~
tablecmds.c:403:48: nota: se esperaba ‘AlterTableType’ {también conocido como
‘enum AlterTableType’} pero el argumento es de tipo ‘Relation’ {también
conocido como ‘struct RelationData *’}
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
~~~~~~~~~~~~~~~^~~~~~~
tablecmds.c:308:23: aviso: el paso del argumento 2 de ‘ATSimplePermissions’
crea un puntero desde un entero sin una conversión [-Wint-conversion]
#define ATT_TABLE 0x0001
^~~~~~
tablecmds.c:4637:29: nota: en expansión de macro ‘ATT_TABLE’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~
tablecmds.c:403:66: nota: se esperaba ‘Relation’ {también conocido como ‘struct
RelationData *’} pero el argumento es de tipo ‘int’
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
~~~~~~~~~^~~
tablecmds.c:4637:4: error: faltan argumentos para la función
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~~~~~~~~~~~
tablecmds.c:403:13: nota: se declara aquí
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
^~~~~~~~~~~~~~~~~~~
tablecmds.c:4645:24: error: tipo incompatible para el argumento 1 de
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~
tablecmds.c:403:48: nota: se esperaba ‘AlterTableType’ {también conocido como
‘enum AlterTableType’} pero el argumento es de tipo ‘Relation’ {también
conocido como ‘struct RelationData *’}
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
~~~~~~~~~~~~~~~^~~~~~~
tablecmds.c:308:23: aviso: el paso del argumento 2 de ‘ATSimplePermissions’
crea un puntero desde un entero sin una conversión [-Wint-conversion]
#define ATT_TABLE 0x0001
^~~~~~
tablecmds.c:4645:29: nota: en expansión de macro ‘ATT_TABLE’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~
tablecmds.c:403:66: nota: se esperaba ‘Relation’ {también conocido como ‘struct
RelationData *’} pero el argumento es de tipo ‘int’
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
~~~~~~~~~^~~
tablecmds.c:4645:4: error: faltan argumentos para la función
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~~~~~~~~~~~
tablecmds.c:403:13: nota: se declara aquí
static void ATSimplePermissions(AlterTableType cmdtype, Relation rel, int
allowed_targets);
^~~~~~~~~~~~~~~~~~~
tablecmds.c: En la función ‘alter_table_type_to_string’:
tablecmds.c:6179:2: aviso: el valor de enumeración ‘AT_AddPeriod’ no se maneja
en un switch [-Wswitch]
switch (cmdtype)
^~~~~~
tablecmds.c:6179:2: aviso: el valor de enumeración ‘AT_DropPeriod’ no se maneja
en un switch [-Wswitch]
tablecmds.c: En la función ‘ATExecDropPeriod’:
tablecmds.c:7968:23: error: tipo incompatible para el argumento 1 de
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~
tablecmds.c:6325:36: nota: se esperaba ‘AlterTableType’ {también conocido como
‘enum AlterTableType’} pero el argumento es de tipo ‘Relation’ {también
conocido como ‘struct RelationData *’}
ATSimplePermissions(AlterTableType cmdtype, Relation rel, int allowed_targets)
~~~~~~~~~~~~~~~^~~~~~~
tablecmds.c:308:23: aviso: el paso del argumento 2 de ‘ATSimplePermissions’
crea un puntero desde un entero sin una conversión [-Wint-conversion]
#define ATT_TABLE 0x0001
^~~~~~
tablecmds.c:7968:28: nota: en expansión de macro ‘ATT_TABLE’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~
tablecmds.c:6325:54: nota: se esperaba ‘Relation’ {también conocido como
‘struct RelationData *’} pero el argumento es de tipo ‘int’
ATSimplePermissions(AlterTableType cmdtype, Relation rel, int allowed_targets)
~~~~~~~~~^~~
tablecmds.c:7968:3: error: faltan argumentos para la función
‘ATSimplePermissions’
ATSimplePermissions(rel, ATT_TABLE);
^~~~~~~~~~~~~~~~~~~
tablecmds.c:6325:1: nota: se declara aquí
ATSimplePermissions(AlterTableType cmdtype, Relation rel, int allowed_targets)
^~~~~~~~~~~~~~~~~~~
make[3]: *** [../../../src/Makefile.global:939: tablecmds.o] Error 1
make[2]: *** [common.mk:39: commands-recursive] Error 2
make[2]: *** Se espera a que terminen otras tareas....
make[1]: *** [Makefile:42: all-backend-recurse] Error 2
make: *** [GNUmakefile:11: all-src-recurse] Error 2