1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-13 07:41:39 +03:00

Update /contrib for "autocommit TO 'on'".

Create objects in public schema.

Make spacing/capitalization consistent.

Remove transaction block use for object creation.

Remove unneeded function GRANTs.
This commit is contained in:
Bruce Momjian
2002-10-18 18:41:22 +00:00
parent fb9bc342ff
commit aa4c702eac
91 changed files with 3530 additions and 2643 deletions

View File

@ -25,6 +25,20 @@ EOT
$opt{d} ||= 'TEST';
my $dbi=DBI->connect('DBI:Pg:dbname='.$opt{d}) || die "Couldn't connect DB: $opt{d} !\n";
my $setsql = qq{
SET search_path = public;
};
my $sth = $dbi->prepare($setsql);
$sth->execute();
my $setsql2 = qq{
SET autocommit TO 'on';
};
my $sth2 = $dbi->prepare($setsql2);
$sth2->execute();
my $sql;
my $notice;
my $sss = '(3000,3000,2990,2990)';

View File

@ -2,11 +2,11 @@
use strict;
my $NUM = 20000;
print "drop table boxtmp;\n";
print "drop table boxtmp2;\n";
print "DROP TABLE boxtmp;\n";
print "DROP TABLE boxtmp2;\n";
print "create table boxtmp (b box);\n";
print "create table boxtmp2 (b box);\n";
print "CREATE TABLE boxtmp (b box);\n";
print "CREATE TABLE boxtmp2 (b box);\n";
srand(1);
open(DAT,">bbb.dat") || die;
@ -26,20 +26,20 @@ foreach ( 1..$NUM ) {
}
close DAT;
print "copy boxtmp from stdin;\n";
print "COPY boxtmp FROM stdin;\n";
open(DAT,"bbb.dat") || die;
while(<DAT>) { print; }
close DAT;
print "\\.\n";
print "copy boxtmp2 from stdin;\n";
print "COPY boxtmp2 FROM stdin;\n";
open(DAT,"bbb.dat") || die;
while(<DAT>) { print; }
close DAT;
print "\\.\n";
print "create index bix on boxtmp using gist (b gist_box_ops);\n";
print "create index bix2 on boxtmp2 using rtree (b box_ops);\n";
print "CREATE INDEX bix ON boxtmp USING gist (b gist_box_ops);\n";
print "CREATE INDEX bix2 ON boxtmp2 USING rtree (b box_ops);\n";
sub min {

View File

@ -3,41 +3,51 @@
-- does not depend on contents of seg.sql.
--
\set ECHO none
create table boxtmp (b box);
CREATE TABLE boxtmp (b box);
\copy boxtmp from 'data/test_box.data'
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
count
-------
2
(1 row)
create index bix on boxtmp using rtree (b);
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
CREATE INDEX bix ON boxtmp USING rtree (b);
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
count
-------
2
(1 row)
drop index bix;
create index bix on boxtmp using gist (b);
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
DROP INDEX bix;
CREATE INDEX bix ON boxtmp USING gist (b);
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
count
-------
2
(1 row)
create table polytmp (p polygon);
CREATE TABLE polytmp (p polygon);
\copy polytmp from 'data/test_box.data'
create index pix on polytmp using rtree (p);
select count(*) from polytmp where p && '(1000,1000),(0,0)'::polygon;
CREATE INDEX pix ON polytmp USING rtree (p);
SELECT count(*)
FROM polytmp
WHERE p && '(1000,1000),(0,0)'::polygon;
count
-------
2
(1 row)
drop index pix;
create index pix on polytmp using gist (p);
select count(*) from polytmp where p && '(1000,1000),(0,0)'::polygon;
DROP INDEX pix;
CREATE INDEX pix ON polytmp USING gist (p);
SELECT count(*)
FROM polytmp
WHERE p && '(1000,1000),(0,0)'::polygon;
count
-------
2

View File

@ -1,8 +1,8 @@
begin transaction;
-- Adjust this setting to control where the objects get created.
SET search_path = public;
SET autocommit TO 'on';
--
--
--
@ -11,23 +11,45 @@ SET search_path = public;
--
--
-- define the GiST support methods
create function gbox_consistent(internal,box,int4) returns bool as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gbox_consistent(internal,box,int4)
RETURNS bool
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function gbox_compress(internal) returns internal as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gbox_compress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function rtree_decompress(internal) returns internal as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION rtree_decompress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function gbox_penalty(internal,internal,internal) returns internal as 'MODULE_PATHNAME' language 'C' with (isstrict);
CREATE FUNCTION gbox_penalty(internal,internal,internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C' with (isstrict);
create function gbox_picksplit(internal, internal) returns internal as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gbox_picksplit(internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function gbox_union(bytea, internal) returns box as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gbox_union(bytea, internal)
RETURNS box
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function gbox_same(box, box, internal) returns internal as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gbox_same(box, box, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
-- create the operator class
CREATE OPERATOR CLASS gist_box_ops
DEFAULT FOR TYPE box USING gist AS
DEFAULT FOR TYPE box USING gist
AS
OPERATOR 1 << ,
OPERATOR 2 &< ,
OPERATOR 3 && ,
@ -53,21 +75,28 @@ CREATE OPERATOR CLASS gist_box_ops
--
--
-- define the GiST support methods
create function gpoly_consistent(internal,polygon,int4) returns bool as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gpoly_consistent(internal,polygon,int4)
RETURNS bool
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
create function gpoly_compress(internal) returns internal as 'MODULE_PATHNAME' language 'C';
CREATE FUNCTION gpoly_compress(internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE 'C';
-- create the operator class
CREATE OPERATOR CLASS gist_poly_ops
DEFAULT FOR TYPE polygon USING gist AS
OPERATOR 1 << RECHECK ,
OPERATOR 2 &< RECHECK ,
OPERATOR 3 && RECHECK ,
OPERATOR 4 &> RECHECK ,
OPERATOR 5 >> RECHECK ,
OPERATOR 6 ~= RECHECK ,
OPERATOR 7 ~ RECHECK ,
OPERATOR 8 @ RECHECK ,
DEFAULT FOR TYPE polygon USING gist
AS
OPERATOR 1 << RECHECK,
OPERATOR 2 &< RECHECK,
OPERATOR 3 && RECHECK,
OPERATOR 4 &> RECHECK,
OPERATOR 5 >> RECHECK,
OPERATOR 6 ~= RECHECK,
OPERATOR 7 ~ RECHECK,
OPERATOR 8 @ RECHECK,
FUNCTION 1 gpoly_consistent (internal, polygon, int4),
FUNCTION 2 gbox_union (bytea, internal),
FUNCTION 3 gpoly_compress (internal),
@ -76,6 +105,3 @@ CREATE OPERATOR CLASS gist_poly_ops
FUNCTION 6 gbox_picksplit (internal, internal),
FUNCTION 7 gbox_same (box, box, internal),
STORAGE box;
end transaction;

View File

@ -3,36 +3,46 @@
-- does not depend on contents of seg.sql.
--
\set ECHO none
SET autocommit TO 'on';
\i rtree_gist.sql
\set ECHO all
create table boxtmp (b box);
CREATE TABLE boxtmp (b box);
\copy boxtmp from 'data/test_box.data'
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
create index bix on boxtmp using rtree (b);
CREATE INDEX bix ON boxtmp USING rtree (b);
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
drop index bix;
DROP INDEX bix;
create index bix on boxtmp using gist (b);
CREATE INDEX bix ON boxtmp USING gist (b);
select count(*) from boxtmp where b && '(1000,1000,0,0)'::box;
SELECT count(*)
FROM boxtmp
WHERE b && '(1000,1000,0,0)'::box;
create table polytmp (p polygon);
CREATE TABLE polytmp (p polygon);
\copy polytmp from 'data/test_box.data'
create index pix on polytmp using rtree (p);
CREATE INDEX pix ON polytmp USING rtree (p);
select count(*) from polytmp where p && '(1000,1000),(0,0)'::polygon;
SELECT count(*)
FROM polytmp
WHERE p && '(1000,1000),(0,0)'::polygon;
drop index pix;
DROP INDEX pix;
create index pix on polytmp using gist (p);
select count(*) from polytmp where p && '(1000,1000),(0,0)'::polygon;
CREATE INDEX pix ON polytmp USING gist (p);
SELECT count(*)
FROM polytmp
WHERE p && '(1000,1000),(0,0)'::polygon;