aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-10-21 20:38:58 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-10-21 20:38:58 +0000
commitab61df9e527dcedbd3bbefbcb8b634b0b72f2ad5 (patch)
tree37681f50c738902a0a7cbe6ebc405d59042fbf30 /src/test
parent289e2905c82fc37f8b82b088bb823742aad4bb68 (diff)
downloadpostgresql-ab61df9e527dcedbd3bbefbcb8b634b0b72f2ad5.tar.gz
postgresql-ab61df9e527dcedbd3bbefbcb8b634b0b72f2ad5.zip
Remove regex_flavor GUC, so that regular expressions are always "advanced"
style by default. Per discussion, there seems to be hardly anything that really relies on being able to change the regex flavor, so the ability to select it via embedded options ought to be enough for any stragglers. Also, if we didn't remove the GUC, we'd really be morally obligated to mark the regex functions non-immutable, which'd possibly create performance issues.
Diffstat (limited to 'src/test')
-rw-r--r--src/test/regress/expected/guc.out78
-rw-r--r--src/test/regress/sql/guc.sql46
2 files changed, 62 insertions, 62 deletions
diff --git a/src/test/regress/expected/guc.out b/src/test/regress/expected/guc.out
index a580daa089d..1fd2b98f6e8 100644
--- a/src/test/regress/expected/guc.out
+++ b/src/test/regress/expected/guc.out
@@ -607,95 +607,95 @@ DROP ROLE temp_reset_user;
--
-- Tests for function-local GUC settings
--
-set regex_flavor = advanced;
+set work_mem = '3MB';
create function report_guc(text) returns text as
$$ select current_setting($1) $$ language sql
-set regex_flavor = basic;
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+set work_mem = '1MB';
+select report_guc('work_mem'), current_setting('work_mem');
report_guc | current_setting
------------+-----------------
- basic | advanced
+ 1MB | 3MB
(1 row)
-- this should draw only a warning
alter function report_guc(text) set search_path = no_such_schema;
NOTICE: schema "no_such_schema" does not exist
-- with error occurring here
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
ERROR: schema "no_such_schema" does not exist
-alter function report_guc(text) reset search_path set regex_flavor = extended;
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+alter function report_guc(text) reset search_path set work_mem = '2MB';
+select report_guc('work_mem'), current_setting('work_mem');
report_guc | current_setting
------------+-----------------
- extended | advanced
+ 2MB | 3MB
(1 row)
alter function report_guc(text) reset all;
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
report_guc | current_setting
------------+-----------------
- advanced | advanced
+ 3MB | 3MB
(1 row)
-- SET LOCAL is restricted by a function SET option
create or replace function myfunc(int) returns text as $$
begin
- set local regex_flavor = extended;
- return current_setting('regex_flavor');
+ set local work_mem = '2MB';
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
-select myfunc(0), current_setting('regex_flavor');
- myfunc | current_setting
-----------+-----------------
- extended | advanced
+set work_mem = '1MB';
+select myfunc(0), current_setting('work_mem');
+ myfunc | current_setting
+--------+-----------------
+ 2MB | 3MB
(1 row)
alter function myfunc(int) reset all;
-select myfunc(0), current_setting('regex_flavor');
- myfunc | current_setting
-----------+-----------------
- extended | extended
+select myfunc(0), current_setting('work_mem');
+ myfunc | current_setting
+--------+-----------------
+ 2MB | 2MB
(1 row)
-set regex_flavor = advanced;
+set work_mem = '3MB';
-- but SET isn't
create or replace function myfunc(int) returns text as $$
begin
- set regex_flavor = extended;
- return current_setting('regex_flavor');
+ set work_mem = '2MB';
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
-select myfunc(0), current_setting('regex_flavor');
- myfunc | current_setting
-----------+-----------------
- extended | extended
+set work_mem = '1MB';
+select myfunc(0), current_setting('work_mem');
+ myfunc | current_setting
+--------+-----------------
+ 2MB | 2MB
(1 row)
-set regex_flavor = advanced;
+set work_mem = '3MB';
-- it should roll back on error, though
create or replace function myfunc(int) returns text as $$
begin
- set regex_flavor = extended;
+ set work_mem = '2MB';
perform 1/$1;
- return current_setting('regex_flavor');
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
+set work_mem = '1MB';
select myfunc(0);
ERROR: division by zero
CONTEXT: SQL statement "SELECT 1/ $1 "
PL/pgSQL function "myfunc" line 3 at PERFORM
-select current_setting('regex_flavor');
+select current_setting('work_mem');
current_setting
-----------------
- advanced
+ 3MB
(1 row)
-select myfunc(1), current_setting('regex_flavor');
- myfunc | current_setting
-----------+-----------------
- extended | extended
+select myfunc(1), current_setting('work_mem');
+ myfunc | current_setting
+--------+-----------------
+ 2MB | 2MB
(1 row)
diff --git a/src/test/regress/sql/guc.sql b/src/test/regress/sql/guc.sql
index 9966606275c..a7b795af47d 100644
--- a/src/test/regress/sql/guc.sql
+++ b/src/test/regress/sql/guc.sql
@@ -186,68 +186,68 @@ DROP ROLE temp_reset_user;
-- Tests for function-local GUC settings
--
-set regex_flavor = advanced;
+set work_mem = '3MB';
create function report_guc(text) returns text as
$$ select current_setting($1) $$ language sql
-set regex_flavor = basic;
+set work_mem = '1MB';
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
-- this should draw only a warning
alter function report_guc(text) set search_path = no_such_schema;
-- with error occurring here
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
-alter function report_guc(text) reset search_path set regex_flavor = extended;
+alter function report_guc(text) reset search_path set work_mem = '2MB';
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
alter function report_guc(text) reset all;
-select report_guc('regex_flavor'), current_setting('regex_flavor');
+select report_guc('work_mem'), current_setting('work_mem');
-- SET LOCAL is restricted by a function SET option
create or replace function myfunc(int) returns text as $$
begin
- set local regex_flavor = extended;
- return current_setting('regex_flavor');
+ set local work_mem = '2MB';
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
+set work_mem = '1MB';
-select myfunc(0), current_setting('regex_flavor');
+select myfunc(0), current_setting('work_mem');
alter function myfunc(int) reset all;
-select myfunc(0), current_setting('regex_flavor');
+select myfunc(0), current_setting('work_mem');
-set regex_flavor = advanced;
+set work_mem = '3MB';
-- but SET isn't
create or replace function myfunc(int) returns text as $$
begin
- set regex_flavor = extended;
- return current_setting('regex_flavor');
+ set work_mem = '2MB';
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
+set work_mem = '1MB';
-select myfunc(0), current_setting('regex_flavor');
+select myfunc(0), current_setting('work_mem');
-set regex_flavor = advanced;
+set work_mem = '3MB';
-- it should roll back on error, though
create or replace function myfunc(int) returns text as $$
begin
- set regex_flavor = extended;
+ set work_mem = '2MB';
perform 1/$1;
- return current_setting('regex_flavor');
+ return current_setting('work_mem');
end $$
language plpgsql
-set regex_flavor = basic;
+set work_mem = '1MB';
select myfunc(0);
-select current_setting('regex_flavor');
-select myfunc(1), current_setting('regex_flavor');
+select current_setting('work_mem');
+select myfunc(1), current_setting('work_mem');