Update FAQ's in head and 7.3.X.

This commit is contained in:
Bruce Momjian 2003-02-14 14:05:00 +00:00
parent 044dca9f7c
commit 0e010a54a3
6 changed files with 215 additions and 80 deletions

187
configure vendored
View File

@ -8330,23 +8330,27 @@ fi
fi
if test "$with_pam" = yes ; then
if test "${ac_cv_header_security_pam_appl_h+set}" = set; then
echo "$as_me:$LINENO: checking for security/pam_appl.h" >&5
echo $ECHO_N "checking for security/pam_appl.h... $ECHO_C" >&6
if test "${ac_cv_header_security_pam_appl_h+set}" = set; then
for ac_header in security/pam_appl.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo "$as_me:$LINENO: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
fi
echo "$as_me:$LINENO: result: $ac_cv_header_security_pam_appl_h" >&5
echo "${ECHO_T}$ac_cv_header_security_pam_appl_h" >&6
echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
else
# Is the header compilable?
echo "$as_me:$LINENO: checking security/pam_appl.h usability" >&5
echo $ECHO_N "checking security/pam_appl.h usability... $ECHO_C" >&6
echo "$as_me:$LINENO: checking $ac_header usability" >&5
echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
cat >conftest.$ac_ext <<_ACEOF
#line $LINENO "configure"
#include "confdefs.h"
$ac_includes_default
#include <security/pam_appl.h>
#include <$ac_header>
_ACEOF
rm -f conftest.$ac_objext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
@ -8371,12 +8375,12 @@ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
echo "${ECHO_T}$ac_header_compiler" >&6
# Is the header present?
echo "$as_me:$LINENO: checking security/pam_appl.h presence" >&5
echo $ECHO_N "checking security/pam_appl.h presence... $ECHO_C" >&6
echo "$as_me:$LINENO: checking $ac_header presence" >&5
echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
cat >conftest.$ac_ext <<_ACEOF
#line $LINENO "configure"
#include "confdefs.h"
#include <security/pam_appl.h>
#include <$ac_header>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
@ -8408,37 +8412,156 @@ echo "${ECHO_T}$ac_header_preproc" >&6
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc in
yes:no )
{ echo "$as_me:$LINENO: WARNING: security/pam_appl.h: accepted by the compiler, rejected by the preprocessor!" >&5
echo "$as_me: WARNING: security/pam_appl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
{ echo "$as_me:$LINENO: WARNING: security/pam_appl.h: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: security/pam_appl.h: proceeding with the preprocessor's result" >&2;};;
{ echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
no:yes )
{ echo "$as_me:$LINENO: WARNING: security/pam_appl.h: present but cannot be compiled" >&5
echo "$as_me: WARNING: security/pam_appl.h: present but cannot be compiled" >&2;}
{ echo "$as_me:$LINENO: WARNING: security/pam_appl.h: check for missing prerequisite headers?" >&5
echo "$as_me: WARNING: security/pam_appl.h: check for missing prerequisite headers?" >&2;}
{ echo "$as_me:$LINENO: WARNING: security/pam_appl.h: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: security/pam_appl.h: proceeding with the preprocessor's result" >&2;};;
{ echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
esac
echo "$as_me:$LINENO: checking for security/pam_appl.h" >&5
echo $ECHO_N "checking for security/pam_appl.h... $ECHO_C" >&6
if test "${ac_cv_header_security_pam_appl_h+set}" = set; then
echo "$as_me:$LINENO: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_cv_header_security_pam_appl_h=$ac_header_preproc
eval "$as_ac_Header=$ac_header_preproc"
fi
echo "$as_me:$LINENO: result: $ac_cv_header_security_pam_appl_h" >&5
echo "${ECHO_T}$ac_cv_header_security_pam_appl_h" >&6
echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
fi
if test $ac_cv_header_security_pam_appl_h = yes; then
:
if test `eval echo '${'$as_ac_Header'}'` = yes; then
cat >>confdefs.h <<_ACEOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
else
{ { echo "$as_me:$LINENO: error: header file <security/pam_appl.h> is required for PAM" >&5
echo "$as_me: error: header file <security/pam_appl.h> is required for PAM" >&2;}
for ac_header in pam/pam_appl.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo "$as_me:$LINENO: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
fi
echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
else
# Is the header compilable?
echo "$as_me:$LINENO: checking $ac_header usability" >&5
echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
cat >conftest.$ac_ext <<_ACEOF
#line $LINENO "configure"
#include "confdefs.h"
$ac_includes_default
#include <$ac_header>
_ACEOF
rm -f conftest.$ac_objext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -s conftest.$ac_objext'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_header_compiler=yes
else
echo "$as_me: failed program was:" >&5
cat conftest.$ac_ext >&5
ac_header_compiler=no
fi
rm -f conftest.$ac_objext conftest.$ac_ext
echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
echo "${ECHO_T}$ac_header_compiler" >&6
# Is the header present?
echo "$as_me:$LINENO: checking $ac_header presence" >&5
echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
cat >conftest.$ac_ext <<_ACEOF
#line $LINENO "configure"
#include "confdefs.h"
#include <$ac_header>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
ac_status=$?
egrep -v '^ *\+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } >/dev/null; then
if test -s conftest.err; then
ac_cpp_err=$ac_c_preproc_warn_flag
else
ac_cpp_err=
fi
else
ac_cpp_err=yes
fi
if test -z "$ac_cpp_err"; then
ac_header_preproc=yes
else
echo "$as_me: failed program was:" >&5
cat conftest.$ac_ext >&5
ac_header_preproc=no
fi
rm -f conftest.err conftest.$ac_ext
echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
echo "${ECHO_T}$ac_header_preproc" >&6
# So? What about this header?
case $ac_header_compiler:$ac_header_preproc in
yes:no )
{ echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
no:yes )
{ echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
{ echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
esac
echo "$as_me:$LINENO: checking for $ac_header" >&5
echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
if eval "test \"\${$as_ac_Header+set}\" = set"; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
eval "$as_ac_Header=$ac_header_preproc"
fi
echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
fi
if test `eval echo '${'$as_ac_Header'}'` = yes; then
cat >>confdefs.h <<_ACEOF
#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
else
{ { echo "$as_me:$LINENO: error: header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM." >&5
echo "$as_me: error: header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM." >&2;}
{ (exit 1); exit 1; }; }
fi
done
fi
done
fi

View File

@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
dnl $Header: /cvsroot/pgsql/configure.in,v 1.235 2003/02/11 21:05:35 petere Exp $
dnl $Header: /cvsroot/pgsql/configure.in,v 1.236 2003/02/14 14:05:00 momjian Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
@ -724,7 +724,9 @@ if test "$with_openssl" = yes ; then
fi
if test "$with_pam" = yes ; then
AC_CHECK_HEADER(security/pam_appl.h, [], [AC_MSG_ERROR([header file <security/pam_appl.h> is required for PAM])])
AC_CHECK_HEADERS(security/pam_appl.h, [],
[AC_CHECK_HEADERS(pam/pam_appl.h, [],
[AC_MSG_ERROR([header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM.])])])
fi

View File

@ -1,7 +1,7 @@
Otvety na chasto zadavaemye voprosy po PostgreSQL
Data poslednego obnovleniya: CHetverg 5 Dekabrya 00:47:26 EDT 2002
Data poslednego obnovleniya: CHetverg 13 Fevralya 23:07:35 EDT 2002
Anglijskij variant soprovozhdaet: Bryus Mom'yan (Bruce Momjian)
(pgman@candle.pha.pa.us)
@ -275,7 +275,7 @@
1.7) Kakaya poslednyaya versiya?
Poslednij vypusk PostgreSQL - `eto versiya 7.2.3.
Poslednij vypusk PostgreSQL - `eto versiya 7.3.1.
My planiruem vypuskat' novye versii kazhdye chetyre mesyaca.
@ -469,17 +469,13 @@
2.3) Est' li u PostgreSQL graficheskij interfejs pol'zovatelya?
Da, suschestvuet neskol'ko graficheskih interfejsov dlya PostgreSQL.
`Eto PgAccess (http://www.pgaccess.com, PgAdmin II
`Eto PgAccess (http://www.pgaccess.org, PgAdmin II
(http://www.pgadmin.org, Win32-only), RHDB Admin (
http://sources.redhat.com/rhdb/) i Rekall (
http://www.thekompany.com/products/rekall/, kommercheskij). Takzhe
est' PHPPgAdmin ( http://phppgadmin.sourceforge.net/) - interfejs k
PostgreSQL, osnovannyj na Web.
U nas est' prekrasnyj goraficheskij interfejs, nazyvaemyj PgAccess,
kotoryj takzhe mozhno ispol'zovat' kak generator otchetov. Ego
stranichka http://www.pgaccess.org/
2.4) Kakie yazyki mogut vzaimodejstvovat' s PostgreSQL?
Kakie-libo interfejsy dlya PostgreSQL suschestvuyut dlya bol'shinstva
@ -669,10 +665,6 @@
sozdaniya ogranicheniya na kolichestvo backend processov kak raz i
sostoit v tom, chtoby vashej sisteme hvatilo resursov.
V PostgreSQL do versii 6.5, maksimal'noe kolichestvo backend processov
bylo 64, i izmenenie `etogo kolichestva trebovalo perekompilyacii
posle ustanovki konstanty MaxBackendId v include/storage/sinvaladt.h.
3.9) CHto nahoditsya v kataloge pgsql_tmp?
Dannyj katalog soderzhit vremennye fajly, generiruemye obrabotchikom
@ -853,6 +845,11 @@ pa
ORDER BY col [ DESC ]
LIMIT 1;
Esli vam kazhetsya, chto optimizator nekorretno vybiraet
posledovatel'nyj perebor, ispol'zujte SET enable_seqscan TO 'off' i
zapustite testy, chtoby uvidet', ne stalo-li skanirovanie indeksov
bystree.
Kogda ispol'zuyutsya operacii s shablonami, naprimer LIKE ili ~,
indeksy mogut byt' ispol'zovany v sleduyuschih sluchayah:
* Nachalo stroki poiska dolzhno sovpadat' s nachalom iskomoj stroki,
@ -929,12 +926,12 @@ pa
Tip Vnutrennee imya Zamechaniya
--------------------------------------------------
"char" char 1 simvol
CHAR(n) bpchar zapolnyaetsya pustotoj do fiksirovannoj dliny
VARCHAR(n) varchar razmer zadaet maksimal'nuyu dlinu, net zapolnen
iya
CHAR(n) bpchar zapolnyaetsya pustotoj do fiksirovannoj dliny
TEXT text net zadavaemogo verhnego ogranicheniya ili dlin
y
"char" char odin simvol
BYTEA bytea massiv bajt peremennoj dliny (mozhno ispol'zova
t' null-bajt bez opaski)
@ -948,15 +945,17 @@ t' null-bajt bez opaski)
szhatiyu ili mogut byt' sohraneny ne v strokom vide cherez TOAST, tak
chto zanimaemoe diskovoe prostranstvo mozhet takzhe byt' i men'she,
chem ozhidalos'.
VARCHAR(n) - `eto luchshee reshenie, kogda nuzhno hranit' stroki
peremennoj dliny, ne prevyshayuschie opredelennogo razmera. TEXT -
`eto luchshee reshenie dlya strok neogranichennoj dliny, s maksimal'no
dopustimoj dlinoj v 1 gigabajt.
CHAR(n) - `eto luchshee reshenie dlya hraneniya strok, kotorye obychno
imeyut odinakovuyu dlinu. VARCHAR(n) - `eto luchshee reshenie, kogda
nuzhno hranit' stroki peremennoj dliny, no ne prevyshayuschie
opredelennogo razmera. TEXT - `eto luchshee reshenie dlya strok
neogranichennoj dliny, s maksimal'no dopustimoj dlinoj v 1 gigabajt.
BYTEA dlya hraneniya binarnyh dannyh, znacheniya kotoryh mogut
vklyuchat' NULL bajty. `Eti tipy imeyut shodnye harakteristiki
proizvoditel'nosti.
imeyut odinakovuyu dlinu. CHAR(n) zapolnyaetsya pustotoj do zadannoj
dliny, v to vremya kak VARCHAR(n) hranit tol'ko simvoly, iz kotoryh
sostoit stroka. BYTEA ispol'zuetsya dlya hraneniya binarnyh dannyh,
znacheniya kotoryh mogut vklyuchat' NULL bajty. `Eti tipy imeyut
shodnye harakteristiki proizvoditel'nosti.
4.15.1) Kak mne sozdat' pole serial/s-avto-uvelicheniem?
@ -1146,8 +1145,8 @@ CREATE TABLE test (x int, modtime timestamp DEFAULT CURRENT_TIMESTAMP );
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col);
CHtoby takaya konstrukciya rabotala bystro, kolonka subcol dolzhna
byt' proindeksirovana. My nadeemsya ubrat' `eto ogranichenie v
buduschem vypuske.
byt' proindeksirovana. `Eta problema proizvoditel'nosti budet
ustranena v versii 7.4.
4.23) Kak mne vypolnit' vneshnee svyazyvanie?

View File

@ -13,7 +13,7 @@
alink="#0000ff">
<H1>Ответы на часто задаваемые вопросы по PostgreSQL</H1>
<P>Дата последнего обновления: Четверг 5 Декабря 00:47:26 EDT 2002</P>
<P>Дата последнего обновления: Четверг 13 Февраля 23:07:35 EDT 2002</P>
<P>Английский вариант сопровождает: Брюс Момьян (Bruce Momjian) (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
@ -323,7 +323,7 @@
<H4><A name="1.7">1.7</A>) Какая последняя версия?</H4>
<P>Последний выпуск PostgreSQL - это версия 7.2.3.</P>
<P>Последний выпуск PostgreSQL - это версия 7.3.1.</P>
<P>Мы планируем выпускать новые версии каждые четыре месяца.</P>
@ -550,7 +550,7 @@
пользователя?</H4>
<P>Да, существует несколько графических интерфейсов для PostgreSQL.
Это PgAccess (<A href="http://www.pgaccess.com/">http://www.pgaccess.com</A>,
Это PgAccess (<A href="http://www.pgaccess.org/">http://www.pgaccess.org</A>,
PgAdmin II (<A href="http://www.pgadmin.org/">http://www.pgadmin.org</A>,
Win32-only), RHDB Admin (<A href="http://sources.redhat.com/rhdb/">
http://sources.redhat.com/rhdb/</A>) и Rekall
@ -558,11 +558,7 @@
http://www.thekompany.com/products/rekall/</A>, коммерческий). Также есть
PHPPgAdmin (<A href="http://phppgadmin.sourceforge.net/">
http://phppgadmin.sourceforge.net/</A>) - интерфейс к PostgreSQL, основанный
на Web.
<P>У нас есть прекрасный горафический интерфейс, называемый
PgAccess, который также можно использовать как генератор отчетов.
Его страничка <A href="http://www.pgaccess.org">http://www.pgaccess.org/</A></P>
на Web.</p>
<H4><A name="2.4">2.4</A>) Какие языки могут взаимодействовать с PostgreSQL?</H4>
@ -772,10 +768,6 @@
Причина создания ограничения на количество backend процессов как
раз и состоит в том, чтобы вашей системе хватило ресурсов.</P>
<P>В PostgreSQL до версии 6.5, максимальное количество backend процессов
было 64, и изменение этого количества требовало перекомпиляции после
установки константы MaxBackendId в <I>include/storage/sinvaladt.h</I>.</P>
<H4><A name="3.9">3.9</A>) Что находится в каталоге <I>pgsql_tmp</I>?</H4>
<P>Данный каталог содержит временные файлы, генерируемые обработчиком
@ -969,6 +961,11 @@
LIMIT 1;
</pre>
<P>Если вам кажется, что оптимизатор некорретно выбирает последовательный
перебор, используйте <CODE>SET enable_seqscan TO 'off'</CODE> и
запустите тесты, чтобы увидеть, не стало-ли сканирование индексов быстрее.
</P>
<P>Когда используются операции с шаблонами, например <SMALL>LIKE</SMALL>
или <I>~</I>, индексы могут быть использованы в следующих случаях:</P>
<UL>
@ -1058,10 +1055,10 @@
<PRE>
Тип Внутреннее имя Замечания
--------------------------------------------------
"char" char 1 символ
CHAR(n) bpchar заполняется пустотой до фиксированной длины
VARCHAR(n) varchar размер задает максимальную длину, нет заполнения
CHAR(n) bpchar заполняется пустотой до фиксированной длины
TEXT text нет задаваемого верхнего ограничения или длины
"char" char один символ
BYTEA bytea массив байт переменной длины (можно использовать null-байт без опаски)
</PRE>
@ -1076,13 +1073,16 @@ BYTEA bytea
так что занимаемое дисковое пространство может также быть и меньше,
чем ожидалось.</P>
<SMALL>VARCHAR(n)</SMALL> - это лучшее решение, когда нужно хранить
строки переменной длины, не превышающие определенного размера.
<SMALL>TEXT</SMALL> - это лучшее решение для строк неограниченной длины,
с максимально допустимой длиной в 1 гигабайт.
<P><SMALL>CHAR(n)</SMALL> - это лучшее решение для хранения строк, которые
обычно имеют одинаковую длину. <SMALL>VARCHAR(n)</SMALL> - это лучшее
решение, когда нужно хранить строки переменной длины, но не превышающие
определенного размера. <SMALL>TEXT</SMALL> - это лучшее решение для строк
неограниченной длины, с максимально допустимой длиной в 1 гигабайт.
<SMALL>BYTEA</SMALL> для хранения бинарных данных, значения которых
могут включать <SMALL>NULL</SMALL> байты. Эти типы имеют сходные
обычно имеют одинаковую длину. <SMALL>CHAR(n)</SMALL> заполняется
пустотой до заданной длины, в то время как <SMALL>VARCHAR(n)</SMALL>
хранит только символы, из которых состоит строка.
<SMALL>BYTEA</SMALL> используется для хранения бинарных данных, значения
которых могут включать <SMALL>NULL</SMALL> байты. Эти типы имеют сходные
характеристики производительности.</P>
<H4><A name="4.15.1">4.15.1</A>) Как мне создать поле
@ -1321,8 +1321,8 @@ BYTEA bytea
</PRE>
Чтобы такая конструкция работала быстро, колонка <CODE>subcol</CODE>
должна быть проиндексирована.
Мы надеемся убрать это ограничение в будущем выпуске.
должна быть проиндексирована. Эта проблема производительности будет
устранена в версии 7.4.
<H4><A name="4.23">4.23</A>) Как мне выполнить внешнее связывание?</H4>

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.96 2003/01/06 09:58:23 petere Exp $
* $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.97 2003/02/14 14:05:00 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -43,7 +43,12 @@ static int recv_and_check_password_packet(Port *port);
char *pg_krb_server_keyfile;
#ifdef USE_PAM
#ifdef HAVE_PAM_PAM_APPL_H
#include <pam/pam_appl.h>
#endif
#ifdef HAVE_SECURITY_PAM_APPL_H
#include <security/pam_appl.h>
#endif
#define PGSQL_PAM_SERVICE "postgresql" /* Service name passed to PAM */

View File

@ -8,7 +8,7 @@
* or in pg_config.h afterwards. Of course, if you edit pg_config.h, then your
* changes will be overwritten the next time you run configure.
*
* $Id: pg_config.h.in,v 1.38 2003/01/25 05:19:47 tgl Exp $
* $Id: pg_config.h.in,v 1.39 2003/02/14 14:05:00 momjian Exp $
*/
#ifndef PG_CONFIG_H
@ -344,6 +344,9 @@
/* Set to 1 if you have <netinet/tcp.h> */
#undef HAVE_NETINET_TCP_H
/* Set to 1 if you have <pam/pam_appl.h> */
#undef HAVE_PAM_PAM_APPL_H
/* Set to 1 if you have <readline.h> */
#undef HAVE_READLINE_H
@ -353,6 +356,9 @@
/* Set to 1 if you have <readline/readline.h> */
#undef HAVE_READLINE_READLINE_H
/* Set to 1 if you have <security/pam_appl.h> */
#undef HAVE_SECURITY_PAM_APPL_H
/* Set to 1 if you have <sys/ipc.h> */
#undef HAVE_SYS_IPC_H