Problem with server/utils/snapmgr.h

From: Chris Browne <cbbrowne(at)acm(dot)org>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Problem with server/utils/snapmgr.h
Date: 2008-04-21 20:40:02
Message-ID: 607ierndr1.fsf_-_@dba2.int.libertyrms.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

There's a new #include file that it turns out we need for Slony-I to
reference, namely include/server/utils/snapmgr.h

I tried adding an autoconf rule to Slony-I to check for its existence
(goal then is to do a suitable #define so that we can #ifdef the
#include, so that we #include this only with versions of PostgreSQL
that have the file).

If I use:
AC_CHECK_HEADER(utils/snapmgr.h, HAVE_SNAPMGR=1)

this turns out to fail. Apparently autoconf wants to compile the
#include file to validate that it's an OK #include file.

GCC barfs on it, thus:

cbbrowne(at)dba2:~/Slony-I/CMD/slony1-HEAD> gcc -I/opt/OXRS/dbs/pgsql84-beta/include/server /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/block.h:31: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'BlockNumber'
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/block.h:55: error: expected specifier-qualifier-list before 'uint16'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/storage/off.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemid.h:46: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ItemOffset'
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemid.h:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ItemLength'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/off.h:24: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OffsetNumber'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:17,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:40: error: expected specifier-qualifier-list before 'OffsetNumber'
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:143: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ItemPointerEquals'
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/itemptr.h:144: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ItemPointerCompare'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/storage/relfilenode.h:44: error: expected specifier-qualifier-list before 'Oid'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:16,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:106: error: expected specifier-qualifier-list before 'TransactionId'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:118: error: expected specifier-qualifier-list before 'int32'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:142: error: expected specifier-qualifier-list before 'uint16'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:442: error: expected specifier-qualifier-list before 'uint32'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:498: error: expected specifier-qualifier-list before 'uint32'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:623: error: expected specifier-qualifier-list before 'uint16'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:671: error: expected specifier-qualifier-list before 'BlockNumber'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:684: error: expected specifier-qualifier-list before 'BlockNumber'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:694: error: expected specifier-qualifier-list before 'TransactionId'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:714: error: expected specifier-qualifier-list before 'BlockNumber'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:722: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'HeapTupleHeaderGetCmin'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:723: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'HeapTupleHeaderGetCmax'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:725: error: expected declaration specifiers or '...' before 'CommandId'
/opt/OXRS/dbs/pgsql84-beta/include/server/access/htup.h:726: error: expected declaration specifiers or '...' before 'bool'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:18,
from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:30: error: expected declaration specifiers or '...' before '*' token
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:31: error: 'bool' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapshot.h:35: error: expected specifier-qualifier-list before 'SnapshotSatisfiesFunc'
In file included from /opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:16:
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SnapshotData'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SnapshotData'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:24: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SnapshotData'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:25: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'SnapshotData'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:69: error: 'HeapTupleSatisfiesMVCC' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:71: error: 'HeapTupleSatisfiesNow' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:73: error: 'HeapTupleSatisfiesSelf' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:75: error: 'HeapTupleSatisfiesAny' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:77: error: 'HeapTupleSatisfiesToast' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:79: error: 'HeapTupleSatisfiesDirty' declared as function returning a function
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:83: error: expected declaration specifiers or '...' before 'CommandId'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:85: error: expected declaration specifiers or '...' before 'TransactionId'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:88: error: expected declaration specifiers or '...' before 'uint16'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/tqual.h:88: error: expected declaration specifiers or '...' before 'TransactionId'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:20: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Snapshot'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:21: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Snapshot'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Snapshot'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:24: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TransactionXmin'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:25: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RecentXmin'
/opt/OXRS/dbs/pgsql84-beta/include/server/utils/snapmgr.h:26: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RecentGlobalXmin'

Is there something in here that needs cleaning?

Note: I pulled CVS HEAD earlier today, so this is the state of the
code just a little while ago.
--
"cbbrowne","@","linuxfinances.info"
http://linuxfinances.info/info/advocacy.html
Humpty Dumpty sat on the wall,
Humpty Dumpty had a great fall!
All the king's horses,
And all the king's men,
Had scrambled eggs for breakfast again!

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Zoltan Boszormenyi 2008-04-21 20:42:30 Re: [HACKERS] TRUNCATE TABLE with IDENTITY
Previous Message Simon Riggs 2008-04-21 20:38:50 Re: MERGE Specification