[open-ils-commits] r16594 - in trunk/Open-ILS/src/sql/Pg: . upgrade (scottmk)

svn at svn.open-ils.org svn at svn.open-ils.org
Fri Jun 4 15:00:59 EDT 2010


Author: scottmk
Date: 2010-06-04 15:00:55 -0400 (Fri, 04 Jun 2010)
New Revision: 16594

Added:
   trunk/Open-ILS/src/sql/Pg/upgrade/0293.function.interval-to-seconds.sql
Modified:
   trunk/Open-ILS/src/sql/Pg/002.schema.config.sql
   trunk/Open-ILS/src/sql/Pg/999.functions.global.sql
Log:
Add two little utility functions to convert from intervals to seconds.

M    Open-ILS/src/sql/Pg/999.functions.global.sql
M    Open-ILS/src/sql/Pg/002.schema.config.sql
A    Open-ILS/src/sql/Pg/upgrade/0293.function.interval-to-seconds.sql


Modified: trunk/Open-ILS/src/sql/Pg/002.schema.config.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-06-04 15:07:13 UTC (rev 16593)
+++ trunk/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-06-04 19:00:55 UTC (rev 16594)
@@ -65,7 +65,7 @@
     install_date    TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW()
 );
 
-INSERT INTO config.upgrade_log (version) VALUES ('0292'); -- dbs
+INSERT INTO config.upgrade_log (version) VALUES ('0293'); -- Scott McKellar
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,

Modified: trunk/Open-ILS/src/sql/Pg/999.functions.global.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/999.functions.global.sql	2010-06-04 15:07:13 UTC (rev 16593)
+++ trunk/Open-ILS/src/sql/Pg/999.functions.global.sql	2010-06-04 19:00:55 UTC (rev 16594)
@@ -1116,3 +1116,18 @@
 CREATE TRIGGER aaa_indexing_ingest_or_delete AFTER INSERT OR UPDATE ON biblio.record_entry FOR EACH ROW EXECUTE PROCEDURE biblio.indexing_ingest_or_delete ();
 CREATE TRIGGER bbb_simple_rec_trigger AFTER INSERT OR UPDATE ON biblio.record_entry FOR EACH ROW EXECUTE PROCEDURE reporter.simple_rec_trigger ();
 
+-- Utility routines, callable via cstore
+
+CREATE OR REPLACE FUNCTION config.interval_to_seconds( interval_val INTERVAL )
+RETURNS INTEGER AS $$
+BEGIN
+	RETURN EXTRACT( EPOCH FROM interval_val );
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE OR REPLACE FUNCTION config.interval_to_seconds( interval_string TEXT )
+RETURNS INTEGER AS $$
+BEGIN
+	RETURN config.interval_to_seconds( interval_string::INTERVAL );
+END;
+$$ LANGUAGE plpgsql;

Added: trunk/Open-ILS/src/sql/Pg/upgrade/0293.function.interval-to-seconds.sql
===================================================================
--- trunk/Open-ILS/src/sql/Pg/upgrade/0293.function.interval-to-seconds.sql	                        (rev 0)
+++ trunk/Open-ILS/src/sql/Pg/upgrade/0293.function.interval-to-seconds.sql	2010-06-04 19:00:55 UTC (rev 16594)
@@ -0,0 +1,19 @@
+BEGIN;
+
+INSERT INTO config.upgrade_log (version) VALUES ('0293'); -- Scott McKellar
+
+CREATE OR REPLACE FUNCTION config.interval_to_seconds( interval_val INTERVAL )
+RETURNS INTEGER AS $$
+BEGIN
+	RETURN EXTRACT( EPOCH FROM interval_val );
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE OR REPLACE FUNCTION config.interval_to_seconds( interval_string TEXT )
+RETURNS INTEGER AS $$
+BEGIN
+	RETURN config.interval_to_seconds( interval_string::INTERVAL );
+END;
+$$ LANGUAGE plpgsql;
+
+COMMIT;



More information about the open-ils-commits mailing list