On Fri, Jan 29, 2010 at 10:02 PM, Josh Berkus <j...@agliodbs.com> wrote:
>> An actual plan here might look like "let's flip it before 9.1alpha1
>> so we can get some alpha testing cycles on it" ...
>
> "Hey, let's flip it in 9.1 CF 1, so that we can have some alpha testing
> cycles on it."

Should we do this?  Patch attached.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 1aff181..13a39be 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -5203,11 +5203,8 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
         This controls whether ordinary string literals
         (<literal>'...'</>) treat backslashes literally, as specified in
         the SQL standard.
-        The default is currently <literal>off</>, causing
-        <productname>PostgreSQL</productname> to have its historical
-        behavior of treating backslashes as escape characters.
-        The default will change to <literal>on</> in a future release
-        to improve compatibility with the SQL standard.
+        Beginning in <productname>PostgreSQL</productname> 9.1, the default is
+        <literal>on</> (prior releases defaulted to <literal>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
diff --git a/doc/src/sgml/syntax.sgml b/doc/src/sgml/syntax.sgml
index 9f2c73b..45e0e9e 100644
--- a/doc/src/sgml/syntax.sgml
+++ b/doc/src/sgml/syntax.sgml
@@ -445,16 +445,15 @@ SELECT 'foo'      'bar';
      If the configuration parameter
      <xref linkend="guc-standard-conforming-strings"> is <literal>off</>,
      then <productname>PostgreSQL</productname> recognizes backslash escapes
-     in both regular and escape string constants.  This is for backward
-     compatibility with the historical behavior, where backslash escapes
-     were always recognized.
-     Although <varname>standard_conforming_strings</> currently defaults to
-     <literal>off</>, the default will change to <literal>on</> in a future
-     release for improved standards compliance.  Applications are therefore
-     encouraged to migrate away from using backslash escapes.  If you need
-     to use a backslash escape to represent a special character, write the
-     string constant with an <literal>E</> to be sure it will be handled the same
-     way in future releases.
+     in both regular and escape string constants.  However, as of
+     <productname>PostgreSQL</> 9.1, the default is <literal>on</>, meaning
+     that backslash escapes are recognized only in escape string constants.
+     This behavior is more standards-compliant, but might break applications
+     which rely on the historical behavior, where backslash escapes
+     were always recognized.  As a workaround, you can set this parameter
+     to <literal>off</>, but it is better to migrate away from using backslash
+     escapes.  If you need to use a backslash escape to represent a special
+     character, write the string constant with an <literal>E</>.
     </para>
 
     <para>
diff --git a/src/backend/parser/scan.l b/src/backend/parser/scan.l
index 903efee..aec94be 100644
--- a/src/backend/parser/scan.l
+++ b/src/backend/parser/scan.l
@@ -52,7 +52,7 @@
  */
 int				backslash_quote = BACKSLASH_QUOTE_SAFE_ENCODING;
 bool			escape_string_warning = true;
-bool			standard_conforming_strings = false;
+bool			standard_conforming_strings = true;
 
 /*
  * Set the type of YYSTYPE.
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index e839639..83e8517 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -1209,7 +1209,7 @@ static struct config_bool ConfigureNamesBool[] =
 			GUC_REPORT
 		},
 		&standard_conforming_strings,
-		false, NULL, NULL
+		true, NULL, NULL
 	},
 
 	{
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index a3b1457..9b06cd4 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -509,7 +509,7 @@
 #escape_string_warning = on
 #lo_compat_privileges = off
 #sql_inheritance = on
-#standard_conforming_strings = off
+#standard_conforming_strings = on
 #synchronize_seqscans = on
 
 # - Other Platforms and Clients -
-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to