Issue #13286 has been updated by Chris Price.

Category set to stored configuration
Status changed from Unreviewed to Accepted
Priority changed from High to Normal

This sounds like a legitimate issue for our existing stored configuration 
solutions; we probably need to do a better job of escaping content prior to 
insertion.  We need to take care to ensure that any solution is compatible with 
other supported databases.
----------------------------------------
Bug #13286: [Stored Configurations] Invalid unicode escaping with PostgreSQL 9.x
https://projects.puppetlabs.com/issues/13286#change-58735

Author: Dennis Hoppe
Status: Accepted
Priority: Normal
Assignee: 
Category: stored configuration
Target version: 
Affected Puppet version: 2.7.6
Keywords: 
Branch: 


Hello, 

beginning with PostgreSQL 9.1 the parameter "standard_conforming_strings" will 
have the value "on" as default. 

standard_conforming_strings (boolean)

    This controls whether ordinary string literals ('...') treat backslashes 
literally, as specified in the SQL standard. Beginning in PostgreSQL 9.1, the 
default is on (prior releases defaulted to off). Applications can check this 
parameter to determine how string literals will be processed. The presence of 
this parameter can also be taken as an indication that the escape string syntax 
(E'...') is supported. Escape string syntax (Section 4.1.2.2) should be used if 
an application desires backslashes to be treated as escape characters.

This will throw the following error message:

    2012-03-15 11:15:01 CET FEHLER:  ungültiges Unicode-Escape bei Zeichen 184
    2012-03-15 11:15:01 CET TIPP:  Unicode-Escapes müssen \uXXXX oder 
\UXXXXXXXX sein.
    2012-03-15 11:15:01 CET ANWEISUNG:  INSERT INTO "param_values" 
("created_at", "line", "resource_id", "updated_at", "value", "param_name_id") 
VALUES('2012-03-15 11:15:01.040833', NULL, 154, '2012-03-15 11:15:01.040833', E'

The following three lines from my .bashrc are responsible for that, because of 
the \u PostgreSQL expects a unicode string.

    PS1='${debian_chroot:+($debian_chroot)}\[<%= t_color 
-%>\]\u@\h\[\033[00m\]:\    [\033[01;34m\]\w\[\033[00m\]\$ '
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"

Regards, Dennis


-- 
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to