diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml index b479259..7c193d8 100644 --- a/doc/src/sgml/release-8.4.sgml +++ b/doc/src/sgml/release-8.4.sgml @@ -2703,18 +2703,12 @@ - Do not rely on Kerberos tickets to determine the default database - username (Magnus) + Make Kerberos connections use the same method to determine the + username of the client as all other authentication methods (Magnus) - Previously, a Kerberos-capable build of libpq would use the - principal name from any available Kerberos ticket as default - database username, even if the connection wasn't using Kerberos - authentication. This was deemed inconsistent and confusing. - The default username is now determined the same way with or - without Kerberos. Note however that the database username must still - match the ticket when Kerberos authentication is used. + Previously a special Kerberos-only API was used. diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 64e8ead..1b575e2 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -6085,18 +6085,7 @@ ShutdownXLOG(int code, Datum arg) if (RecoveryInProgress()) CreateRestartPoint(CHECKPOINT_IS_SHUTDOWN | CHECKPOINT_IMMEDIATE); else - { - /* - * If archiving is enabled, rotate the last XLOG file so that all the - * remaining records are archived (postmaster wakes up the archiver - * process one more time at the end of shutdown). The checkpoint - * record will go to the next XLOG file and won't be archived (yet). - */ - if (XLogArchivingActive() && XLogArchiveCommandSet()) - RequestXLogSwitch(); - CreateCheckPoint(CHECKPOINT_IS_SHUTDOWN | CHECKPOINT_IMMEDIATE); - } ShutdownCLOG(); ShutdownSUBTRANS(); ShutdownMultiXact(); diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index 15efa8b..d57fed2 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -1073,7 +1073,7 @@ pg_GSS_recvauth(Port *port) gss_release_buffer(&lmin_s, &gbuf); - return ret; + return STATUS_OK; } #endif /* ENABLE_GSS */ diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 9a45355..b5ec7cb 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -3639,14 +3639,9 @@ opt_opfamily: FAMILY any_name { $$ = $2; } opt_recheck: RECHECK { - /* - * RECHECK no longer does anything in opclass definitions, - * but we still accept it to ease porting of old database - * dumps. - */ - ereport(NOTICE, + ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg("RECHECK is no longer required"), + errmsg("RECHECK is no longer supported"), errhint("Update your data type."), scanner_errposition(@1))); $$ = TRUE; diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index a971b1c..8262150 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -8159,10 +8159,8 @@ dumpOpclass(Archive *fout, OpclassInfo *opcinfo) * pg_depend entries. * * XXX RECHECK is gone as of 8.4, but we'll still print it if dumping - * an older server's opclass in which it is used. This is to avoid - * hard-to-detect breakage if a newer pg_dump is used to dump from - * an older server and then reload into that old version. This can - * go away once 8.3 is so old as to not be of interest to anyone. + * an older server's table in which it is used. Would it be better + * to silently ignore it? */ appendPQExpBuffer(query, "SELECT amopstrategy, false AS amopreqcheck, " "amopopr::pg_catalog.regoperator " @@ -8372,10 +8370,8 @@ dumpOpfamily(Archive *fout, OpfamilyInfo *opfinfo) { /* * XXX RECHECK is gone as of 8.4, but we'll still print it if dumping - * an older server's opclass in which it is used. This is to avoid - * hard-to-detect breakage if a newer pg_dump is used to dump from - * an older server and then reload into that old version. This can - * go away once 8.3 is so old as to not be of interest to anyone. + * an older server's table in which it is used. Would it be better + * to silently ignore it? */ appendPQExpBuffer(query, "SELECT amopstrategy, false AS amopreqcheck, " "amopopr::pg_catalog.regoperator " diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index 7e542b0..709e10e 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -2036,7 +2036,7 @@ describeRoles(const char *pattern, bool verbose) if (conns == 0) appendPQExpBuffer(&buf, _("No connections")); else - appendPQExpBuffer(&buf, ngettext("%d connection", "%d connections", conns), conns); + appendPQExpBuffer(&buf, ngettext("1 connection", "%d connections", conns), conns); } attr[i] = pg_strdup(buf.data); diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c index e2315a8..1fdd68f 100644 --- a/src/bin/psql/print.c +++ b/src/bin/psql/print.c @@ -2348,7 +2348,7 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout, FILE *f char default_footer[100]; total_records = opt->topt.prior_records + cont.nrows; - snprintf(default_footer, 100, ngettext("(%lu row)", "(%lu rows)", total_records), total_records); + snprintf(default_footer, 100, ngettext("(1 row)", "(%lu rows)", total_records), total_records); printTableAddFooter(&cont, default_footer); } diff --git a/src/tools/backend/index.html b/src/tools/backend/index.html index ec2dcb8..846f002 100644 --- a/src/tools/backend/index.html +++ b/src/tools/backend/index.html @@ -1,4 +1,4 @@ - +