Uploaded image for project: 'Puppet Server'
  1. Puppet Server
  2. SERVER-2081

Warning in manifest causing invalid byte sequence error on Redhat 7 server

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Normal
    • Resolution: Fixed
    • None
    • SERVER 5.1.5
    • None
    • Bug Fix
    • All Ruby source files will now be parsed as UTF-8 instead of ASCII when running under JRuby 1.7, the same as MRI Ruby and JRuby 9K, which avoids corner-case bugs when interpolating translated strings with Unicode characters.
    • No Action

    Description

      When running puppetserver in Japanese from packages on Redhat 7, this manifest:

      node default {
          class { 'i18ndemo': param1 => false }
      }
      

      causes a warning to be issued, that is correctly printed in Japanese in the server log before causing an invalid encoding error immediately after:

      2017-12-04 13:30:13,359 ERROR [qtp1391621659-62] [puppetserver] Puppet Evaluation Error: a Function Callの検証中にエラーが生じました。eputnam-i18ndemo init.pp: /tmp/i18ndemofile.txtファイルの作成に失敗しました at /etc/puppetlabs/code/environments/production/modules/i18ndemo/manifests/init.pp:23:5 on node maggie
      2017-12-04 13:30:13,363 ERROR [qtp1391621659-62] [puppetserver] Puppet Received a Log attribute with invalid encoding:"Server Error: Evaluation Error: a Function Call\xE3\x81\xAE\xE6\xA4\x9C\xE8\xA8\xBC\xE4\xB8\xAD\xE3\x81\xAB\xE3\x82\xA8\xE3\x83\xA9\xE3\x83\xBC\xE3\x81\x8C\xE7\x94\x9F\xE3\x81\x98\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F\xE3\x80\x82eputnam-i18ndemo init.pp: /tmp/i18ndemofile.txt\xE3\x83\x95\xE3\x82\xA1\xE3\x82\xA4\xE3\x83\xAB\xE3\x81\xAE\xE4\xBD\x9C\xE6\x88\x90\xE3\x81\xAB\xE5\xA4\xB1\xE6\x95\x97\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F at /etc/puppetlabs/code/environments/production/modules/i18ndemo/manifests/init.pp:23:5
      

      On the agent side, the run fails with this error:

      Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Internal Server Error: org.jruby.exceptions.RaiseException: (Encoding::InvalidByteSequenceError) ""\xE3"" on US-ASCII
      

      The agent's locale does not affect this error. If the param is set to true instead, we do not encounter an error.

      Attachments

        Issue Links

          Activity

            People

              maggie Maggie Dreyer
              maggie Maggie Dreyer
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Zendesk Support