Thread

Commits

  1. More message style fixes

  1. more message fixes

    Alvaro Herrera <alvherre@2ndquadrant.com> — 2019-05-15T18:30:05Z

    Here's a bunch of message fixes in the postgres.po module.  Please
    comment if anything seems amiss.  This is not a final patch, since
    regression output has not been adjusted; I only verified that the
    backend still compiles cleanly.  Some of the changes are going from this
    style of message:
      You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause.
    to this:
      You need an unconditional %s rule with a RETURNING clause.
    where the ON DELETE DO INSTEAD part is inserted at execution time, and
    can be things like ON UPDATE DO INSTEAD of ON INSERT DO INSTEAD.  If the
    reduced string context causes inappropriate changes for any language, I
    suppose we shouldn't make this kind of change, but I hope not.
    
    I'm also changing
      "ucnv_fromUChars failed: %s"
    to this:
      "%s failed: %s", "ucnv_fromUChars"
    so it essentially reduces the number of translated strings, because we
    already have "%s failed: %s" in other parts of the backend.  I think
    this is not an issue.  Alternatively, we could just remove that message
    from translation altogether, and have it emit the English version
    always, by changing it from errmsg() to errmsg_internal().
    
    The bulk of the changes are much less interesting that those.
    
    I'm proposing changes in a lot of files:
    
     src/backend/commands/copy.c             |  6 +++---
     src/backend/commands/publicationcmds.c  |  2 +-
     src/backend/commands/subscriptioncmds.c | 32 ++++++++++++++++++++------------
     src/backend/commands/tablecmds.c        |  9 +++++----
     src/backend/parser/analyze.c            |  2 +-
     src/backend/parser/parse_oper.c         |  1 +
     src/backend/postmaster/postmaster.c     |  7 ++++---
     src/backend/replication/basebackup.c    | 17 +++++++----------
     src/backend/replication/walsender.c     | 20 ++++++++++----------
     src/backend/rewrite/rewriteHandler.c    | 19 +++++++++++++------
     src/backend/utils/adt/jsonpath.c        |  3 ++-
     src/backend/utils/adt/jsonpath_exec.c   |  2 +-
     src/backend/utils/adt/jsonpath_scan.l   | 10 +++++-----
     src/backend/utils/adt/pg_locale.c       | 10 ++++++----
     src/backend/utils/adt/regexp.c          | 14 ++++++++++----
     15 files changed, 89 insertions(+), 65 deletions(-)
    
    -- 
    Álvaro Herrera                https://www.2ndQuadrant.com/
    PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
    
  2. Re: more message fixes

    Tom Lane <tgl@sss.pgh.pa.us> — 2019-05-15T21:48:01Z

    Alvaro Herrera <alvherre@2ndquadrant.com> writes:
    > Here's a bunch of message fixes in the postgres.po module.  Please
    > comment if anything seems amiss.
    
    These sorts of changes trouble me a bit from a translatability standpoint:
    
    -                     errmsg("connect = false and enabled = true are mutually exclusive options")));
    +                     errmsg("%s and %s are mutually exclusive options",
    +                            "connect = false", "enabled = true")));
    
    -                        (errmsg("CREATE_REPLICATION_SLOT ... USE_SNAPSHOT "
    -                                "must not be called in a subtransaction")));
    +                        (errmsg("%s must not be called in a subtransaction",
    +                                "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT")));
    
    A translator might expect the %s's to represent single words.
    I think at least you'd want a translator: comment to warn about
    what the insertion will be.
    
    +            /* XXX is it okay to use %d for BlockNumber everywhere? */
    
    BlockNumber should be %u, no?
    
    			regards, tom lane
    
    
    
    
  3. Re: more message fixes

    Alvaro Herrera <alvherre@2ndquadrant.com> — 2019-05-15T22:25:28Z

    On 2019-May-15, Tom Lane wrote:
    
    > Alvaro Herrera <alvherre@2ndquadrant.com> writes:
    > > Here's a bunch of message fixes in the postgres.po module.  Please
    > > comment if anything seems amiss.
    > 
    > These sorts of changes trouble me a bit from a translatability standpoint:
    > 
    > -                     errmsg("connect = false and enabled = true are mutually exclusive options")));
    > +                     errmsg("%s and %s are mutually exclusive options",
    > +                            "connect = false", "enabled = true")));
    > 
    > -                        (errmsg("CREATE_REPLICATION_SLOT ... USE_SNAPSHOT "
    > -                                "must not be called in a subtransaction")));
    > +                        (errmsg("%s must not be called in a subtransaction",
    > +                                "CREATE_REPLICATION_SLOT ... USE_SNAPSHOT")));
    > 
    > A translator might expect the %s's to represent single words.
    > I think at least you'd want a translator: comment to warn about
    > what the insertion will be.
    
    Fair point, I can add that.  (As a translator, I know I have to
    reference the source files more often than I would like.) :-(
    
    > +            /* XXX is it okay to use %d for BlockNumber everywhere? */
    > 
    > BlockNumber should be %u, no?
    
    Yeah.  It's %d in basebackup.c, hence the comment.  I think technically
    it's okay most of the time, because it's only used to reference to block
    numbers in a *file*, not a relation; however, I fear it might still
    break in cases of a very large --with-segsize option.
    
    -- 
    Álvaro Herrera                https://www.2ndQuadrant.com/
    PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services