diff options
author | Bruce Momjian <bruce@momjian.us> | 1998-04-07 18:14:38 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1998-04-07 18:14:38 +0000 |
commit | db21523314fa5bbce7b6713469192dbf74533e25 (patch) | |
tree | 0ef66b02de60ad9e30e3094925108e195067d9b0 /src/backend/access | |
parent | 6a3c751448980d29e7a8ed723adced303250fd12 (diff) |
Back out char2-char16 removal. Add later.
Diffstat (limited to 'src/backend/access')
-rw-r--r-- | src/backend/access/common/tupdesc.c | 4 | ||||
-rw-r--r-- | src/backend/access/hash/hashfunc.c | 75 | ||||
-rw-r--r-- | src/backend/access/nbtree/nbtcompare.c | 26 | ||||
-rw-r--r-- | src/backend/access/transam/xid.c | 6 |
4 files changed, 101 insertions, 10 deletions
diff --git a/src/backend/access/common/tupdesc.c b/src/backend/access/common/tupdesc.c index 719fe3528f4..968846385f1 100644 --- a/src/backend/access/common/tupdesc.c +++ b/src/backend/access/common/tupdesc.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.37 1998/03/30 17:22:05 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/common/tupdesc.c,v 1.38 1998/04/07 18:09:44 momjian Exp $ * * NOTES * some of the executor utility code such as "ExecTypeFromTL" should be @@ -317,7 +317,7 @@ TupleDescInitEntry(TupleDesc desc, * * Note: in the special case of * - * create EMP (name = text, manager = EMP) + * create EMP (name = char16, manager = EMP) * * RelationNameCreateHeapRelation() calls BuildDesc() which * calls this routine and since EMP does not exist yet, the diff --git a/src/backend/access/hash/hashfunc.c b/src/backend/access/hash/hashfunc.c index 37b7722b8c1..cef3a087e95 100644 --- a/src/backend/access/hash/hashfunc.c +++ b/src/backend/access/hash/hashfunc.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/hash/hashfunc.c,v 1.7 1998/03/30 17:22:08 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/hash/hashfunc.c,v 1.8 1998/04/07 18:09:46 momjian Exp $ * * NOTES * These functions are stored in pg_amproc. For each operator class @@ -133,8 +133,6 @@ hashoid(Oid key) return ((uint32) ~key); } -#define PRIME1 37 -#define PRIME2 1048583 uint32 hashchar(char key) @@ -142,8 +140,12 @@ hashchar(char key) int len; uint32 h; - h = 0; len = sizeof(char); + +#define PRIME1 37 +#define PRIME2 1048583 + + h = 0; /* Convert char to integer */ h = h * PRIME1 ^ (key - ' '); h %= PRIME2; @@ -151,6 +153,55 @@ hashchar(char key) return (h); } +uint32 +hashchar2(uint16 intkey) +{ + uint32 h; + int len; + char *key = (char *) &intkey; + + h = 0; + len = sizeof(uint16); + /* Convert string to integer */ + while (len--) + h = h * PRIME1 ^ (*key++ - ' '); + h %= PRIME2; + + return (h); +} + +uint32 +hashchar4(uint32 intkey) +{ + uint32 h; + int len; + char *key = (char *) &intkey; + + h = 0; + len = sizeof(uint32); + /* Convert string to integer */ + while (len--) + h = h * PRIME1 ^ (*key++ - ' '); + h %= PRIME2; + + return (h); +} + +uint32 +hashchar8(char *key) +{ + uint32 h; + int len; + + h = 0; + len = sizeof(char8); + /* Convert string to integer */ + while (len--) + h = h * PRIME1 ^ (*key++ - ' '); + h %= PRIME2; + + return (h); +} uint32 hashname(NameData *n) @@ -172,6 +223,22 @@ hashname(NameData *n) } +uint32 +hashchar16(char *key) +{ + uint32 h; + int len; + + h = 0; + len = sizeof(char16); + /* Convert string to integer */ + while (len--) + h = h * PRIME1 ^ (*key++ - ' '); + h %= PRIME2; + + return (h); +} + /* * (Comment from the original db3 hashing code: ) diff --git a/src/backend/access/nbtree/nbtcompare.c b/src/backend/access/nbtree/nbtcompare.c index 85b673ebba6..a674de9c726 100644 --- a/src/backend/access/nbtree/nbtcompare.c +++ b/src/backend/access/nbtree/nbtcompare.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtcompare.c,v 1.14 1998/03/30 17:22:17 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtcompare.c,v 1.15 1998/04/07 18:09:51 momjian Exp $ * * NOTES * These functions are stored in pg_amproc. For each operator class @@ -102,6 +102,30 @@ btcharcmp(char a, char b) } int32 +btchar2cmp(uint16 a, uint16 b) +{ + return (strncmp((char *) &a, (char *) &b, 2)); +} + +int32 +btchar4cmp(uint32 a, uint32 b) +{ + return (strncmp((char *) &a, (char *) &b, 4)); +} + +int32 +btchar8cmp(char *a, char *b) +{ + return (strncmp(a, b, 8)); +} + +int32 +btchar16cmp(char *a, char *b) +{ + return (strncmp(a, b, 16)); +} + +int32 btnamecmp(NameData *a, NameData *b) { return (strncmp(a->data, b->data, NAMEDATALEN)); diff --git a/src/backend/access/transam/xid.c b/src/backend/access/transam/xid.c index 960d98b9e3a..00810528c44 100644 --- a/src/backend/access/transam/xid.c +++ b/src/backend/access/transam/xid.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/transam/Attic/xid.c,v 1.13 1998/03/30 17:22:28 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/transam/Attic/xid.c,v 1.14 1998/04/07 18:10:01 momjian Exp $ * * OLD COMMENTS * XXX WARNING @@ -30,14 +30,14 @@ extern TransactionId DisabledTransactionId; extern TransactionId AmiTransactionId; extern TransactionId FirstTransactionId; -/* XXX name for catalogs */ +/* XXX char16 name for catalogs */ TransactionId xidin(char *representation) { return (atol(representation)); } -/* XXX name for catalogs */ +/* XXX char16 name for catalogs */ char * xidout(TransactionId transactionId) { |