Compare commits

..

No commits in common. "79a2af3e7277122858da61eff8177d5fe487ce92" and "b2c9936a7156926ace70b89ffb9cfbe1e3b9a559" have entirely different histories.

4 changed files with 12 additions and 10 deletions

View File

@ -1,7 +1,7 @@
PostgreSQL Database Management System
(formerly known as Postgres, then as Postgres95)
Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group
Portions Copyright (c) 1994, The Regents of the University of California

View File

@ -1,9 +1,9 @@
<!-- doc/src/sgml/legal.sgml -->
<date>2024</date>
<date>2023</date>
<copyright>
<year>1996&ndash;2024</year>
<year>1996&ndash;2023</year>
<holder>The PostgreSQL Global Development Group</holder>
</copyright>
@ -11,7 +11,7 @@
<title>Legal Notice</title>
<para>
<productname>PostgreSQL</productname> is Copyright &copy; 1996&ndash;2024
<productname>PostgreSQL</productname> is Copyright &copy; 1996&ndash;2023
by the PostgreSQL Global Development Group.
</para>

View File

@ -1175,7 +1175,7 @@ plan = plpy.prepare("INSERT INTO operations (result) VALUES ($1)", ["text"])
plpy.execute(plan, [result])
$$ LANGUAGE plpython3u;
</programlisting>
Note that the use of <literal>try</literal>/<literal>except</literal> is still
Note that the use of <literal>try/catch</literal> is still
required. Otherwise the exception would propagate to the top of
the Python stack and would cause the whole function to abort with
a <productname>PostgreSQL</productname> error, so that the

View File

@ -849,13 +849,15 @@ CheckPWChallengeAuth(Port *port, const char **logdetail)
if (shadow_pass)
pfree(shadow_pass);
else
{
/*
* If get_role_password() returned error, authentication better not
* have succeeded.
* If get_role_password() returned error, return error, even if the
* authentication succeeded.
*/
if (!shadow_pass)
{
Assert(auth_result != STATUS_OK);
return STATUS_ERROR;
}
if (auth_result == STATUS_OK)