aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/misc/database.c
diff options
context:
space:
mode:
authorMarc G. Fournier <scrappy@hub.org>1998-07-24 03:32:46 +0000
committerMarc G. Fournier <scrappy@hub.org>1998-07-24 03:32:46 +0000
commitbf00bbb0c4940b80b46b7e5b379cd64184f2262f (patch)
treebf32bf3bafe6f367ee97249c83afb4c9e9a637af /src/backend/utils/misc/database.c
parent6e66468f3a160878111578a93be2852635eb4f4d (diff)
downloadpostgresql-bf00bbb0c4940b80b46b7e5b379cd64184f2262f.tar.gz
postgresql-bf00bbb0c4940b80b46b7e5b379cd64184f2262f.zip
I really hope that I haven't missed anything in this one...
From: t-ishii@sra.co.jp Attached are patches to enhance the multi-byte support. (patches are against 7/18 snapshot) * determine encoding at initdb/createdb rather than compile time Now initdb/createdb has an option to specify the encoding. Also, I modified the syntax of CREATE DATABASE to accept encoding option. See README.mb for more details. For this purpose I have added new column "encoding" to pg_database. Also pg_attribute and pg_class are changed to catch up the modification to pg_database. Actually I haved added pg_database_mb.h, pg_attribute_mb.h and pg_class_mb.h. These are used only when MB is enabled. The reason having separate files is I couldn't find a way to use ifdef or whatever in those files. I have to admit it looks ugly. No way. * support for PGCLIENTENCODING when issuing COPY command commands/copy.c modified. * support for SQL92 syntax "SET NAMES" See gram.y. * support for LATIN2-5 * add UNICODE regression test case * new test suite for MB New directory test/mb added. * clean up source files Basic idea is to have MB's own subdirectory for easier maintenance. These are include/mb and backend/utils/mb.
Diffstat (limited to 'src/backend/utils/misc/database.c')
-rw-r--r--src/backend/utils/misc/database.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/backend/utils/misc/database.c b/src/backend/utils/misc/database.c
index 9c9a0a63fa8..6a106b9ad12 100644
--- a/src/backend/utils/misc/database.c
+++ b/src/backend/utils/misc/database.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/misc/Attic/database.c,v 1.11 1998/07/20 16:14:18 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/misc/Attic/database.c,v 1.12 1998/07/24 03:31:59 scrappy Exp $
*
*-------------------------------------------------------------------------
*/
@@ -22,7 +22,12 @@
#include "access/heapam.h"
#include "access/xact.h"
#include "catalog/catname.h"
+#ifdef MB
+#include "catalog/pg_database_mb.h"
+#include "mb/pg_wchar.h"
+#else
#include "catalog/pg_database.h"
+#endif
#include "fmgr.h"
#include "miscadmin.h"
#include "storage/bufmgr.h"
@@ -179,7 +184,11 @@ ExpandDatabasePath(char *dbpath)
* --------------------------------
*/
void
+#ifdef MB
+GetRawDatabaseInfo(char *name, Oid *owner, Oid *db_id, char *path, int *encoding)
+#else
GetRawDatabaseInfo(char *name, Oid *owner, Oid *db_id, char *path)
+#endif
{
int dbfd;
int fileflags;
@@ -273,7 +282,9 @@ GetRawDatabaseInfo(char *name, Oid *owner, Oid *db_id, char *path)
strncpy(path, VARDATA(&(tup_db->datpath)),
(VARSIZE(&(tup_db->datpath)) - VARHDRSZ));
*(path + VARSIZE(&(tup_db->datpath)) - VARHDRSZ) = '\0';
-
+#ifdef MB
+ *encoding = tup_db->encoding;
+#endif
goto done;
}
}