Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
682ccb81
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
682ccb81
编写于
10月 14, 1996
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
New FAQ's.
上级
83cb7298
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
559 addition
and
8 deletion
+559
-8
doc/FAQ
doc/FAQ
+17
-8
doc/FAQ-Irix
doc/FAQ-Irix
+155
-0
doc/FAQ-Linux
doc/FAQ-Linux
+387
-0
未找到文件。
doc/FAQ
浏览文件 @
682ccb81
Frequently Asked Questions (FAQ) for Postgres95
Last updated:
Fri Sep 27 17:48
:23 EDT 1996
Last updated:
Mon Oct 14 08:05
:23 EDT 1996
Version: 2.0
Current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
...
...
@@ -8,9 +8,15 @@ Current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
The most recent version of this document can be viewed at the postgres95 Web
site, http://www.ki.net/postgres95.
Linux-specific questions are answered in
http://www.ki.net/postgres95/docs/FAQ-Linux.phtml.
Irix-specific questions are answered in
http://www.ki.net/postgres95/docs/FAQ-Irix.phtml.
Changes in this version (* = modified, + = new):
* *3.
23) How do I create a serial field
?
* *3.
41) What is the meaning of some of the terms used in Postgres
?
----------------------------------------------------------------------------
...
...
@@ -241,7 +247,7 @@ home page at:
1.6) Latest release of Postgres95
The latest release of postgres95 is version 1.0
7
.
The latest release of postgres95 is version 1.0
8
.
1.7) Is there a commercial version of Postgres95?
...
...
@@ -277,7 +283,7 @@ eventually we can also add the missing features listed above.
1.10) Does Postgres95 work with databases from earlier versions of postgres?
Postgres95 v1.0
7
is compatible with databases created with v1.01. Those
Postgres95 v1.0
8
is compatible with databases created with v1.01. Those
upgrading from 1.0 should read the directions in the MIGRATION_1.0_TO_1.02
directory.
...
...
@@ -546,7 +552,7 @@ sending a mail to:
* majordomo@listserv.direct.net
OpenLink ODBC is currently in beta under Linux. You can get it from
http://www.openlinksw.com/postgre
s.html. It works with our standard ODBC
http://www.openlinksw.com/postgres.html. It works with our standard ODBC
client software so you'll have Postgres ODBC available on every client
platform we support (Win, Mac, Unix, VMS).
...
...
@@ -626,8 +632,8 @@ Place the word 'EXPLAIN' at the beginning of the query, for example:
Postgres does not allow the user to specifiy a user column as type SERIAL.
Instead, you can use each row's oid field as a unique value. However, if you
need to dump and reload the database, you need to be using postgres version
1.07 or
2.* with pgdump's -o option or COPY's WITH OIDS option to preserver
the oids.
1.07 or
later or 2.* with pgdump's -o option or COPY's WITH OIDS option to
preserver
the oids.
Another valid way of doing this is to create a function:
...
...
@@ -771,7 +777,8 @@ INSERTed rows get a timestamp too, so rows that were not in the table at the
desired time will not appear.
Vacuum removes rows that are no longer current. This time-warp feature is
used by the engine for rollback and crash recovery.
used by the engine for rollback and crash recovery. Expiration times can be
set with purge.
3.38) How do I tune the database engine for better performance?
...
...
@@ -852,6 +859,8 @@ common usage. Here are some:
* retrieve, select
* replace, update
* oid, serial value
* portal, cursor
* range variable, table name, table alias
Please let me know if you think of any more.
...
...
doc/FAQ-Irix
0 → 100644
浏览文件 @
682ccb81
====================================================
Frequently Asked Questions (FAQ) for Postgres95
IRIX Specific
TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
====================================================
last updated: Fri Oct 11 14:45:00 BST 1996
current maintainer: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
original author: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
Changes in this version (* = modified, + = new):
+3.1) How do I compile a C program to create a function for extending
Postgres95
This file is divided approximately as follows:
0.*) Bugs in Postgres95 V1.08
1.*) Installing Postgres95
2.*) Uninstalling Postgres95
3.*) Extending Postgres95
Questions answered:
0.1) What bugs do I need to fix before Postgres95 will compile
under Irix?
1.1) What extra items do I need to install Postgres95 under Irix?
1.2) What changes do I need to make to src/Makefile.global?
1.3) What are the references in X11_LIB to libsocket and libnsl in
src/Makefile.global?
1.4) Are there any other changes I should make?
2.1) Why can't I move the executable files?
----------------------------------------------------------------------
Section 0: Bugs in Postgres95 V1.08
----------------------------------------------------------------------
0.1) What bugs do I need to fix before Postgres95 will compile
under Irix?
a) Fix the bug in src/Makefile.global:
Change
# Globally pass PORTNAME
CFLAGS+= -DPORTNAME_$(PORTNAME)
CFLAGS += -I ../../backend/port/$(PORTNAME)
to
# Globally pass PORTNAME
CFLAGS+= -DPORTNAME_$(PORTNAME)
CFLAGS += -I../../backend/port/$(PORTNAME)
(i.e. remove the space after the -I)
b) Add the missing prototype to src/bin/pg_dump/pg_dump.h
After the line
extern int findLastBuiltinOid();
add
extern void setMaxOid(FILE *fout);
----------------------------------------------------------------------
Section 1: Installing Postgres95
----------------------------------------------------------------------
1.1) What extra items do I need to install Postgres95 under Irix?
You *must* have the following installed:
a) Gnu make (installed as gmake)
You are recommended to install the following:
a) GNU install (installed as ginstall)
You may choose to install the following:
a) GNU readline library (if you wish psql to have readline
support).
b) tcl/tk (if you wish to compile pgtclsh)
1.2) What changes do I need to make to src/Makefile.global?
You *must* set the following variables:
PORTNAME= irix5
IPCSDIR= /usr/sbin
You will also need to change the following to match your own
installation:
SRCDIR
POSTGRESDIR
If you switch on the USE_TCL option, you will need to set these:
TCL_INCDIR=
TCL_LIBDIR=
TCL_LIB =
TK_INCDIR=
TK_LIBDIR=
TK_LIB =
You may also make any other changes you need as documented in
the INSTALL file and in Makefile.global
1.3) What are the references in X11_LIB to libsocket and libnsl in
src/Makefile.global?
These are Sun Solaris specific and shouldn't be in Makefile.global
The compile (including pgtclsh) seems to go OK even though
these don't exist...
1.4) Are there any other changes I should make?
If you have installed the GNU install program (ginstall), you
should edit src/mk/port/postgres.mk.irix5
and change the line:
INSTALL=/usr/bin/X11/bsdinst
to
INSTALL=ginstall
For an explanation as to why this is a good idea, see Question 2.1
----------------------------------------------------------------------
Section 2: Deinstalling Postgres95
----------------------------------------------------------------------
2.1) Why can't I move the executable files?
By default, the IRIX port uses the BSD compatible version of
install from /usr/bin/X11. If you read the man page for this
version of install, you will see that it is not meant for
end-user use; it has the interesting side-effect of chowning
files it installs to root.
You should still be able to delete the files as you (the
postgres user) will own the directory in which they are
stored.
The normal IRIX install program cannot be used easily as it
takes its arguments in the reverse order. It is therefore
recommended to use the GNU version of install (ginstall).
See Question 1.4
----------------------------------------------------------------------
Section 3: Extending Postgres95
----------------------------------------------------------------------
3.1) How do I compile a C program to create a function for extending
Postgres95
Here is a sample command line:
cc -I/usr/local/postgres95/include/ -I/usr/local/postgres95/src/backend
-shared -o funcs.so funcs.c
****************************************************************************
Dr. Andrew C.R. Martin, University College London & SciTech Software
EMAIL: martin@biochem.ucl.ac.uk Tel:(Work) +44(0)171 419 3890
URL: http://www.biochem.ucl.ac.uk/~martin (Home) +44(0)1372 275775
****************************************************************************
doc/FAQ-Linux
0 → 100644
浏览文件 @
682ccb81
====================================================
Frequently Asked Questions (FAQ) for Postgres95
Linux Specific
TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
====================================================
last updated: Mon Oct 14 11:00:00 BST 1996
current maintainer: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
original author: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
Changes in this version (* = modified, + = new):
*1.3) [REDHAT] Why do I get problems with missing libdl and dlfcn.h?
*1.14) [DEBIAN] Where is libtermcap?
This file is divided approximately as follows:
0.*) Bugs in Postgres95 V1.08
1.*) Installing Postgres95
2.*) Compiling accessory programs
3.*) Runtime Problems
4.*) Spurious Problems in Need of Verification
Questions answered:
0.1) What bugs do I need to fix before Postgres95 will compile
under Linux?
1.1) What changes do I need to make to src/Makefile.global
1.2) Why do I get problems with missing libreadline?
1.3) [REDHAT] Why do I get problems with missing libdl and dlfcn.h?
1.4) [SLACKWARE 3.1] Why do I get problems with missing libdl and dlfcn.h?
1.5) My compile of the backend dies complaining about the include file
dlfcn.h missing
1.6) GCC complains about an ignored option -fpic
1.7) I get warnings of the form
warning: cast from pointer to integer of different size
1.8) [SuSE-Linux 4.2] Where is curses and termcap?
1.9) Why do I get problems with ld.so?
1.10) Why do I get `yy_flush_buffer undefined' errors?
1.11) How do I compile Postgres95 on an a.out system?
1.12) Why does make fail with:
yacc -d /disk2/postgres95/src/backend/parser/gram.y
make: /usr/bin/make: cannot execute binary file
1.13) What are the references in X11_LIB to libsocket and libnsl in
src/Makefile.global?
1.14) [DEBIAN] Where is libtermcap?
2.1) The linker fails to find libX11 when compiling pgtclsh
3.1) I get an error reporting _fUnKy_POSTPORT_sTuFf_ undefined when
running scripts like createuser
3.2) I run postmaster and after that system says 'Bad system call(Core
dumped)'
3.3) When I try to start the Postmaster, why do I get an error of the form
Failed Assertion("!(file != 0):(null)", File:
"/usr/local/postgres95/src/backend/storage/file/fd.c", Line: 257)
!(file != 0) (0)
initdb: could not create template database
initdb: cleaning up.
3.4) Why doesn't createuser work?
4.1) Why doesn't the postmaster start the first time?
----------------------------------------------------------------------
Section 0: Bugs in Postgres95 V1.08
----------------------------------------------------------------------
0.1) What bugs do I need to fix before Postgres95 will compile
under Linux?
a) Fix the bug in src/Makefile.global:
Change
# Globally pass PORTNAME
CFLAGS+= -DPORTNAME_$(PORTNAME)
CFLAGS += -I ../../backend/port/$(PORTNAME)
to
# Globally pass PORTNAME
CFLAGS+= -DPORTNAME_$(PORTNAME)
CFLAGS += -I../../backend/port/$(PORTNAME)
(i.e. remove the space after the -I)
b) Add the missing prototype to src/bin/pg_dump/pg_dump.h
After the line
extern int findLastBuiltinOid();
add
extern void setMaxOid(FILE *fout);
----------------------------------------------------------------------
Section 1: Compiling Postgres95
----------------------------------------------------------------------
1.1) What changes do I need to make to src/Makefile.global
You *must* set the following variables:
PORTNAME= linux
You will also need to change the following to match your own
installation:
SRCDIR
POSTGRESDIR
If you switch on the USE_TCL option, you will need to set these:
TCL_INCDIR=
TCL_LIBDIR=
TCL_LIB=
TK_INCDIR=
TK_LIBDIR=
TK_LIB=
X11_INCDIR=
X11_LIBDIR=
X11_LIB=
On my Slackware3.0 system, these are:
TCL_INCDIR= /usr/include/tcl
TCL_LIBDIR= /usr/lib
TCL_LIB= -ltcl
TK_INCDIR= /usr/include/tcl
TK_LIBDIR= /usr/lib
TK_LIB= -ltk
X11_INCDIR= /usr/include/X11
X11_LIBDIR= /usr/X386/lib
X11_LIB= -lX11
You may also make any other changes you need as documented in
the INSTALL file and in Makefile.global
1.2) Why do I get problems with missing libreadline?
Linux systems generally don't come with the GNU readline library
installed. Either comment out the USE_READLINE variable in
src/Makefile.global or install the GNU readline library.
1.3) [REDHAT] Why do I get problems with missing libdl and dlfcn.h?
The libdl library is used for dynamic linking of user-supplied
functions at run-time. For some reason this library was missed out
from the Redhat distribution.
You can obtain the library and the header file from:
ftp://tsx-11.mit.edu/packages/GCC/ld.so-1.7.14.tar.gz
Alternatively, you may find precompiled binaries in
distributions/debian/buzz/binary-i386/base/ld.so-1.7.14-4.deb
on the same site, or follow the instructions given for question 1.2 for
correcting the same error with early releases of Slackware 3.1.
1.4) [SLACKWARE 3.1] Why do I get problems with missing libdl and dlfcn.h?
See the answer to question 1.1. Slackware up to version 3.0 was
supplied with this library and include file and they seem to be
back in again in the latest versions of 3.1, but the early 3.1
releases (before 9th September 1996) had them missing and many
CD-ROM versions will have been pressed from the first 3.1 releases.
The easiest fix is to obtain the file ldso.tgz from the a4 disk of
a more recent Slackware 3.1 distribution and unpack this file
from the root (/) directory, then do
sh install/doinst.sh
to complete the installation. Follow this with
ldconfig
If you want to install manually, you must first install the file
dlfcn.h in /usr/include.
Second, install the file libdl.so.1.7.14 (or whatever the latest
release is) in /lib, then do:
cd /lib
ln -sf libdl.so.1.7.14 libdl.so.1
ln -sf libdl.so.1 libdl.so
On some systems (depending on your GCC configuration) it may be
necessary to do:
cd /usr/lib
ln -sf /lib/libdl.so .
Finally
ldconfig
1.5) My compile of the backend dies complaining about the include file
dlfcn.h missing
See the answer to question 1.2. Don't forget that if you are using
an a.out system you must first have installed the dld package
(which is not supplied with most a.out systems) to have dlfcn.h
at all. See Question 1.11.
1.6) GCC complains about an ignored option -fpic
Earlier versions of GCC accepted either -fpic or -fPIC.
It appears that more recent versions (V2.7.2?) require -fPIC.
If you are using an ELF version of Linux, this can safely be
ignored as -fPIC is the default.
You can correct this by editing
src/mk/port/postgres.mk.linux
1.7) I get warnings of the form
warning: cast from pointer to integer of different size
These can safely be ignored
1.8) [SuSE-Linux 4.2] Where is curses and termcap?
SuSE-Linux has ncurses but not curses. Edit src/bin/psql/Makefile and
Change
LIBCURSES= -lcurses
to
LIBCURSES= -lncurses
SuSE-Linux has the termcap library is in /usr/lib/termcap instead of
in /usr/lib
Edit src/bin/psql/Makefile and
Change
ifeq ($(PORTNAME), linux)
LD_ADD += -ltermcap
else
to
ifeq ($(PORTNAME), linux)
LD_ADD += -L/usr/lib/termcap -ltermcap
else
1.9) Why do I get problems with ld.so?
If you get problems with ld.so, another library required under
ELF for dynamic loading, then you have messed up your installation
or (more likely) upgrade of Linux.
See the answers to Question 1.2. You may need to install
ld.so.x.y.z in /lib and run ldconfig.
The most recent stable release of the ld package is 1.7.14
At the time of writing, 1.8.x versions of ld are experimental.
1.10) Why do I get `yy_flush_buffer undefined' errors?
This isn't really Linux specific, but is common on older Linux
installations. You must have a recent version of flex (2.5.2 or later)
to compile Postgres95. Note that flex 2.5.3 has a bug: see
Question 3.4.
1.11) How do I compile Postgres95 on an a.out system?
First, you must install the dld library. This may be obtained
from Sunsite as:
Linux/libs/dld.3.2.7.tar.gz
Second, comment out the LINUX_ELF line in src/mk/port/postgres.mk.linux
1.12) Why does make fail with:
yacc -d /disk2/postgres95/src/backend/parser/gram.y
make: /usr/bin/make: cannot execute binary file
yacc is generally implemented as a script which invokes bison -y
For some reason (certain versions of make? certain versions of
bash?) make is unable to execute this script file.
To correct this, simply edit src/mk/port/postgres.mk.linux
and, at the end of the file, change:
# YACC = bison -y
to
YACC = bison -y
1.13) What are the references in X11_LIB to libsocket and libnsl in
src/Makefile.global?
These are Sun Solaris specific and shouldn't be in Makefile.global
The compile (including pgtclsh) seems to go OK even though
these don't exist...
1.14) [DEBIAN] Where is libtermcap?
Debian Linux comes without the termcap library and uses ncurses
(which uses terminfo instead). There is no need to change the
LIBCURSES variable in src/bin/psql/Makefile since Debian provides
a link from libncurses to libcurses (unlike SuSE-Linux --- see
Question 1.8).
Edit src/bin/psql/Makefile and change:
ifeq ($(PORTNAME), linux)
LD_ADD += -ltermcap
else
to
ifeq ($(PORTNAME), linux)
CFLAGS +=
else
----------------------------------------------------------------------
Section 2: Compiling accessory programs
----------------------------------------------------------------------
2.1) The linker fails to find libX11 when compiling pgtclsh
Modify the src/Makefile.global to change
X11_LIBDIR = /usr/lib
to
X11_LIBDIR = /usr/X11R6/lib
----------------------------------------------------------------------
Section 3: Runtime Problems
----------------------------------------------------------------------
3.1) I get an error reporting _fUnKy_POSTPORT_sTuFf_ undefined when
running scripts like createuser
This is a bug in V1.06-V1.07 of Postgres and is fixed in V1.08
3.2) I run postmaster and after that system says 'Bad system call(Core
dumped)'
This indicates that you have no compiled shared memory support
into your kernel. You need to recompile the Linux kernel to add this
feature.
3.3) When I try to start the Postmaster, why do I get an error of the form
Failed Assertion("!(file != 0):(null)", File:
"/usr/local/postgres95/src/backend/storage/file/fd.c", Line: 257)
!(file != 0) (0)
initdb: could not create template database
initdb: cleaning up.
Your permissions on the file /dev/null are wrong.
ls -l /dev/null should give you something like:
crw-rw-rw- 1 root wheel 2, 2 Oct 8 18:41 /dev/null
Correct the permissions using:
chmod a+rw /dev/null
3.4) Why doesn't createuser work?
There is a problem with Version 2.5.3 of GNU flex and createuser.
Your options are to downgrade flex to V2.5.2, apply a patch to
V2.5.3 (supplied in doc/README.flex) or wait for V2.5.4 which
will fix the bug.
----------------------------------------------------------------------
Section 4: Spurious Problems in Need of Verification
----------------------------------------------------------------------
4.1) Why doesn't the postmaster start the first time?
Pawko Olszewski <alder@amg.com.pl> reported a problem that, using
Linux kernel 2.0.18, the postmaster wouldn't start the first time
it is run using
postmaster -B 256
but if run as
postmaster -B 64
killed and then restarted as
postmaster -B 256
everything was OK.
I haven't been able to repeat this problem! Nobody else has
reported anything similar.
****************************************************************************
Dr. Andrew C.R. Martin, University College London & SciTech Software
EMAIL: martin@biochem.ucl.ac.uk Tel:(Work) +44(0)171 419 3890
URL: http://www.biochem.ucl.ac.uk/~martin (Home) +44(0)1372 275775
****************************************************************************
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录