On Sat, 31 Oct 2026 at 14:53, Kirill Reshke <[email protected]> wrote: > > On Sat, 31 Oct 2026 at 13:56, Heikki Linnakangas <[email protected]> wrote: > > > > On 30/10/2026 20:38, Kirill Reshke wrote: > > > User running ALTER COLLATION receives an internal error: > > > > > > ALTER COLLATION "default" REFRESH VERSION; > > > ERROR: cannot refresh version of default collation > > > HINT: Use ALTER DATABASE ... REFRESH COLLATION VERSION instead. > > > > > > We do monitor our logs for XX00* error codes to check for data > > > corruptions etc, so sql-reachable XX000 gives us a red alert. > > > > > > This simple one-liner should do: > > > > > > diff --git a/src/backend/commands/collationcmds.c > > > b/src/backend/commands/collationcmds.c > > > index cfa0e4610d9..1f6156f379b 100644 > > > --- a/src/backend/commands/collationcmds.c > > > +++ b/src/backend/commands/collationcmds.c > > > @@ -443,7 +443,8 @@ AlterCollation(AlterCollationStmt *stmt) > > > > > > if (collOid == DEFAULT_COLLATION_OID) > > > ereport(ERROR, > > > - (errmsg("cannot refresh version of default collation"), > > > + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), > > > + errmsg("cannot refresh version of default collation"), > > > /* translator: %s is an SQL command */ > > > errhint("Use %s instead.", > > > "ALTER DATABASE ... REFRESH COLLATION VERSION"))); > > > > Is ERRCODE_FEATURE_NOT_SUPPORTED correct here? Is this something that we > > just don't currently support, but we potentially could, or is it > > something that just doesn't make sense? > > > > - Heikki > > I think this is something that simply doesn't make sense. But reading > errcodes.h using myself (not AI), I don't see any better option. maybe > ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE ? > > > -- > Best regards, > Kirill Reshke
Also ERRCODE_WRONG_OBJECT_TYPE could do but is defined in /* Class 42 - Syntax Error or Access Rule Violation */. Not sure if we violating something here -- Best regards, Kirill Reshke
