Kouhei Sutou
null+****@clear*****
Wed Dec 23 17:07:35 JST 2015
Kouhei Sutou 2015-12-23 17:07:35 +0900 (Wed, 23 Dec 2015) New Revision: e89dc8a2acef9d844ab452655476c4135ae2eaef https://github.com/pgroonga/pgroonga/commit/e89dc8a2acef9d844ab452655476c4135ae2eaef Message: Add install SQL for GreenPlum Database Note that it's not worked yet. Added files: pgroonga-gpdb.sql Modified files: Makefile Modified: Makefile (+5 -0) =================================================================== --- Makefile 2015-12-13 15:47:29 +0900 (9f00536) +++ Makefile 2015-12-23 17:07:35 +0900 (f1ad55e) @@ -10,9 +10,14 @@ EXTENSION = pgroonga EXTENSION_VERSION = \ $(shell grep default_version $(EXTENSION).control | \ sed -e "s/^.*'\([0-9.]*\)'$$/\1/") +ifdef GP +DATA = \ + pgroonga-gpdb.sql +else DATA = \ pgroonga--$(EXTENSION_VERSION).sql # $(shell echo pgroonga--*--*.sql) +endif PG_CPPFLAGS = $(shell pkg-config --cflags $(GROONGA_PKG)) SHLIB_LINK = $(shell pkg-config --libs $(GROONGA_PKG)) -lm Added: pgroonga-gpdb.sql (+327 -0) 100644 =================================================================== --- /dev/null +++ pgroonga-gpdb.sql 2015-12-23 17:07:35 +0900 (9aece04) @@ -0,0 +1,327 @@ +-- NOTE: This isn't worked yet. + +SET search_path = public; + +DROP SCHEMA IF EXISTS pgroonga CASCADE; +CREATE SCHEMA pgroonga; + +CREATE FUNCTION pgroonga.table_name(indexName cstring) + RETURNS cstring + AS '$libdir/pgroonga', 'pgroonga_table_name' + LANGUAGE C + VOLATILE + STRICT; + +CREATE FUNCTION pgroonga.command(groongaCommand text) + RETURNS text + AS '$libdir/pgroonga', 'pgroonga_command' + LANGUAGE C + VOLATILE + STRICT; + +CREATE FUNCTION pgroonga.snippet_html(target text, keywords text[]) + RETURNS text[] + AS '$libdir/pgroonga', 'pgroonga_snippet_html' + LANGUAGE C + VOLATILE + STRICT; + +CREATE FUNCTION pgroonga.match_term(target text, term text) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_term_text' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_term(target text[], term text) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_term_text_array' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_term(target varchar, term varchar) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_term_varchar' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_term(target varchar[], term varchar) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_term_varchar_array' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE OPERATOR %% ( + PROCEDURE = pgroonga.match_term, + LEFTARG = text, + RIGHTARG = text +); + +CREATE OPERATOR %% ( + PROCEDURE = pgroonga.match_term, + LEFTARG = text[], + RIGHTARG = text +); + +CREATE OPERATOR %% ( + PROCEDURE = pgroonga.match_term, + LEFTARG = varchar, + RIGHTARG = varchar +); + +CREATE OPERATOR %% ( + PROCEDURE = pgroonga.match_term, + LEFTARG = varchar[], + RIGHTARG = varchar +); + + +CREATE FUNCTION pgroonga.match_query(text, text) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_query_text' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_query(text[], text) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_query_text_array' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_query(varchar, varchar) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_query_varchar' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE OPERATOR @@ ( + PROCEDURE = pgroonga.match_query, + LEFTARG = text, + RIGHTARG = text +); + +CREATE OPERATOR @@ ( + PROCEDURE = pgroonga.match_query, + LEFTARG = text[], + RIGHTARG = text +); + +CREATE OPERATOR @@ ( + PROCEDURE = pgroonga.match_query, + LEFTARG = varchar, + RIGHTARG = varchar +); + + +CREATE FUNCTION pgroonga.match_regexp(text, text) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_regexp_text' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE FUNCTION pgroonga.match_regexp(varchar, varchar) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_match_regexp_varchar' + LANGUAGE C + IMMUTABLE + STRICT; + +CREATE OPERATOR @~ ( + PROCEDURE = pgroonga.match_regexp, + LEFTARG = text, + RIGHTARG = text +); + +CREATE OPERATOR @~ ( + PROCEDURE = pgroonga.match_regexp, + LEFTARG = varchar, + RIGHTARG = varchar +); + + +CREATE FUNCTION pgroonga.insert(internal) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_insert' + LANGUAGE C; +CREATE FUNCTION pgroonga.beginscan(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_beginscan' + LANGUAGE C; +CREATE FUNCTION pgroonga.gettuple(internal) + RETURNS bool + AS '$libdir/pgroonga', 'pgroonga_gettuple' + LANGUAGE C; +CREATE FUNCTION pgroonga.rescan(internal) + RETURNS void + AS '$libdir/pgroonga', 'pgroonga_rescan' + LANGUAGE C; +CREATE FUNCTION pgroonga.endscan(internal) + RETURNS void + AS '$libdir/pgroonga', 'pgroonga_endscan' + LANGUAGE C; +CREATE FUNCTION pgroonga.build(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_build' + LANGUAGE C; +CREATE FUNCTION pgroonga.buildempty(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_buildempty' + LANGUAGE C; +CREATE FUNCTION pgroonga.bulkdelete(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_bulkdelete' + LANGUAGE C; +CREATE FUNCTION pgroonga.vacuumcleanup(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_vacuumcleanup' + LANGUAGE C; +CREATE FUNCTION pgroonga.canreturn(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_canreturn' + LANGUAGE C; +CREATE FUNCTION pgroonga.costestimate(internal) + RETURNS internal + AS '$libdir/pgroonga', 'pgroonga_costestimate' + LANGUAGE C; + +DELETE FROM pg_catalog.pg_am WHERE amname = 'pgroonga'; +INSERT INTO pg_catalog.pg_am VALUES( + 'pgroonga', -- amname + 11, -- amstrategies + 0, -- amsupport + 0, -- amorderstrategy + true, -- amcanunique + true, -- amcanmulticol + true, -- amoptionalkey + false, -- amsearchnulls + false, -- amstorage + true, -- amclusterable + false, -- amcanshrink + 'pgroonga.insert', -- aminsert + 'pgroonga.beginscan', -- ambeginscan + 'pgroonga.gettuple', -- amgettuple + 0, -- amgetmulti + 'pgroonga.rescan', -- amrescan + 'pgroonga.endscan', -- amendscan + 0, -- ammarkpos, + 0, -- amrestrpos, + 'pgroonga.build', -- ambuild + 'pgroonga.bulkdelete', -- ambulkdelete + 'pgroonga.vacuumcleanup', -- amvacuumcleanup + 'pgroonga.costestimate', -- amcostestimate + 0 -- amoptions +); + +CREATE OPERATOR CLASS pgroonga.text_full_text_search_ops DEFAULT FOR TYPE text + USING pgroonga AS + OPERATOR 6 pg_catalog.~~, + OPERATOR 7 pg_catalog.~~*, + OPERATOR 8 %%, + OPERATOR 9 @@; + +CREATE OPERATOR CLASS pgroonga.text_array_full_text_search_ops + DEFAULT + FOR TYPE text[] + USING pgroonga AS + OPERATOR 8 %% (text[], text), + OPERATOR 9 @@ (text[], text); + +CREATE OPERATOR CLASS pgroonga.varchar_full_text_search_ops FOR TYPE varchar + USING pgroonga AS + OPERATOR 8 %%, + OPERATOR 9 @@; + +CREATE OPERATOR CLASS pgroonga.varchar_ops DEFAULT FOR TYPE varchar + USING pgroonga AS + OPERATOR 1 < (text, text), + OPERATOR 2 <= (text, text), + OPERATOR 3 = (text, text), + OPERATOR 4 >= (text, text), + OPERATOR 5 > (text, text); + +CREATE OPERATOR CLASS pgroonga.varchar_array_ops + DEFAULT + FOR TYPE varchar[] + USING pgroonga AS + OPERATOR 8 %% (varchar[], varchar); + +CREATE OPERATOR CLASS pgroonga.bool_ops DEFAULT FOR TYPE bool + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.int2_ops DEFAULT FOR TYPE int2 + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.int4_ops DEFAULT FOR TYPE int4 + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.int8_ops DEFAULT FOR TYPE int8 + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.float4_ops DEFAULT FOR TYPE float4 + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.float8_ops DEFAULT FOR TYPE float8 + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.timestamp_ops DEFAULT FOR TYPE timestamp + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.timestamptz_ops DEFAULT FOR TYPE timestamptz + USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >; + +CREATE OPERATOR CLASS pgroonga.text_regexp_ops FOR TYPE text + USING pgroonga AS + OPERATOR 6 pg_catalog.~~, + OPERATOR 7 pg_catalog.~~*, + OPERATOR 10 @~; + +CREATE OPERATOR CLASS pgroonga.varchar_regexp_ops FOR TYPE varchar + USING pgroonga AS + OPERATOR 10 @~; -------------- next part -------------- HTML����������������������������... 다운로드