Issue #20897 has been updated by Charlie Sharpsteen.

Assignee changed from Bob Maerten to Charlie Sharpsteen

Upon further investigation, this is caused by the way Ruby 1.9.x interacts with 
the default Apache configuration on most distributions. Most init scripts run 
Apache under the C locale, which causes Ruby to assign the US-ASCII encoding to 
any data read into the process:

<pre>
# LANG=C LC_ALL=C /opt/puppet/bin/ruby -e 'puts Encoding.default_external'
US-ASCII
</pre>

There are a few options for working around this:

  * Set `Encoding.default_external = Encoding::UTF_8` in the config.ru file for 
the puppetmaster as suggested by the patch linked to this ticket. This default 
should be backwards-compatible with the `US-ASCII` encoding currently inherited 
from the C locale.

  * Configure your Apache server to run in a locale that supports non-ASCII 
characters. Note that this may affect all processes spawned by Apache.

I'll update this ticket if we come up with an officially recommended method for 
resolving this situation.

----------------------------------------
Bug #20897: puppet agents complain about master not-being UTF-8
https://projects.puppetlabs.com/issues/20897#change-98100

* Author: Bob Maerten
* Status: Needs More Information
* Priority: Normal
* Assignee: Charlie Sharpsteen
* Category: 
* Target version: 
* Affected Puppet version: 
* Keywords: customer
* Branch: https://github.com/puppetlabs/puppet/pull/1666
----------------------------------------
I had this error after updating to 3.2.1 when I tried to fetch catalog from 
agents

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: 
invalid byte sequence in US-ASCII

My config is Debian based, with packages installed from puppetlab repo. 
PuppetMaster is served through puppetmaster-passenger.
I managed to get it working back by adding these lines to my config.ru:

Encoding.default_external = Encoding::UTF_8
Encoding.default_internal = Encoding::UTF_8

and my agents went back to normal behavior.


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to