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

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

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: SERVER 5.1.5
    • Component/s: None
    • Labels:
    • Release Notes:
      Bug Fix
    • Release Notes Summary:
      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.
    • QA Risk Assessment:
      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

              jsd-sla-details-panel

                People

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

                  Dates

                  • Created:
                    Updated:
                    Resolved: