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


Reply via email to