Changeset: bfe1cb3b4a63 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bfe1cb3b4a63
Added Files:
        sql/backends/monet5/timetrails/Tests/cquery00.sql
        sql/backends/monet5/timetrails/Tests/demoschema.sql
        sql/scripts/50_cquery.sql
Removed Files:
        sql/backends/monet5/timetrails/Tests/bug01.sql
        sql/backends/monet5/timetrails/Tests/bug02.sql
        sql/backends/monet5/timetrails/Tests/bug03.sql
        sql/backends/monet5/timetrails/Tests/bug04.sql
        sql/backends/monet5/timetrails/Tests/bug05.sql
        sql/backends/monet5/timetrails/Tests/bug06.sql
        sql/backends/monet5/timetrails/Tests/iot00.sql
Modified Files:
        clients/Tests/exports.stable.out
        sql/backends/monet5/Makefile.ag
        sql/backends/monet5/timetrails/50_timetrails.sql
        sql/backends/monet5/timetrails/Makefile.ag
        sql/backends/monet5/timetrails/Tests/All
        sql/backends/monet5/timetrails/timetrails.c
        sql/scripts/Makefile.ag
Branch: timetrails
Log Message:

Intermedidate state, still cleaning out


diffs (truncated from 559 to 300 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1575,6 +1575,7 @@ str OPTremapImplementation(Client cntxt,
 str OPTremoteQueriesImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 str OPTreorderImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
 str OPTstatistics(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
+str OPTtimetrailsImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 str OPTvolcanoImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
 str OPTwrapper(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
 str PCREilike2(bit *ret, const str *s, const str *pat);
@@ -2043,6 +2044,7 @@ void dumpExceptionsToStream(stream *out,
 str emptybindRef;
 str emptybindidxRef;
 str eqRef;
+str errorRef;
 str escape_str(str *retval, str s);
 str evalFile(Client c, str fname, int listing);
 str evalRef;
@@ -2529,6 +2531,7 @@ timestamp *timestamp_nil;
 int timestamp_tostr(str *buf, int *len, const timestamp *val);
 int timestamp_tz_fromstr(const char *buf, int *len, timestamp **ret);
 int timestamp_tz_tostr(str *buf, int *len, const timestamp *val, const tzone 
*timezone);
+str timetrailsRef;
 str transactionRef;
 str transaction_abortRef;
 str transaction_beginRef;
@@ -2537,6 +2540,7 @@ str transaction_releaseRef;
 str transaction_rollbackRef;
 void trimMalVariables(MalBlkPtr mb, MalStkPtr stk);
 void trimMalVariables_(MalBlkPtr mb, MalStkPtr glb);
+str tumbleRef;
 void typeChecker(stream *out, Module scope, MalBlkPtr mb, InstrPtr p, int 
silent);
 int tzone_fromstr(const char *buf, int *len, tzone **d);
 tzone tzone_local;
diff --git a/sql/backends/monet5/Makefile.ag b/sql/backends/monet5/Makefile.ag
--- a/sql/backends/monet5/Makefile.ag
+++ b/sql/backends/monet5/Makefile.ag
@@ -4,7 +4,7 @@
 #
 # Copyright 1997 - July 2008 CWI, August 2008 - 2017 MonetDB B.V.
 
-SUBDIRS = NOT_WIN32?vaults UDF LSST generator timetrails
+SUBDIRS = NOT_WIN32?vaults UDF LSST generator 
 
 INCLUDES = ../../include ../../common ../../storage ../../server \
                   ../../../monetdb5/modules/atoms \
@@ -49,7 +49,6 @@ lib__sql = {
        LIBS = ../../server/libsqlserver \
                   ../../storage/libstore \
                   ../../storage/bat/libbatstore \
-                  ../../backends/monet5/timetrails/libtimetrails \
                   ../../common/libsqlcommon \
                   ../../../monetdb5/tools/libmonetdb5 \
                   ../../../gdk/libbat \
@@ -59,6 +58,8 @@ lib__sql = {
                   $(openssl_LIBS) $(MATH_LIBS)
 }
 
+# ../../backends/monet5/timetrails/libtimetrails 
+
 headers_mal = {
        HEADERS = mal
        DIR = libdir/monetdb5
diff --git a/sql/backends/monet5/timetrails/50_timetrails.sql 
b/sql/backends/monet5/timetrails/50_timetrails.sql
--- a/sql/backends/monet5/timetrails/50_timetrails.sql
+++ b/sql/backends/monet5/timetrails/50_timetrails.sql
@@ -17,103 +17,78 @@
 
 create schema timetrails;
 
--- register and start a continuous query
-create procedure timetrails.query(qry string, maxcalls integer)
-       external name timetrails.query;
-
-create procedure timetrails.query(qry string)
-       external name timetrails.query;
-
-create procedure timetrails.query("schema" string, name string, maxcalls 
integer)
-       external name timetrails.query;
-
-create procedure timetrails.query("schema" string, name string)
-       external name timetrails.query;
-
-create procedure timetrails.resume("schema" string, name string)
-       external name timetrails.resume;
-
-create procedure timetrails.resume()
-       external name timetrails.resume;
-
-create procedure timetrails.pause("schema" string, name string)
-       external name timetrails.pause;
-
-create procedure timetrails.keep("schema" string, name string)
-       external name timetrails.keep;
-
-create procedure timetrails.release("schema" string, name string)
-       external name timetrails.release;
-
-create procedure timetrails.pause()
-       external name timetrails.pause;
-
-create procedure timetrails.wait(ms integer)
-       external name timetrails.wait;
-
-create procedure timetrails.stop()
-       external name timetrails.stop;
-
-create procedure timetrails.deregister("schema" string, name string)
-       external name timetrails.deregister;
-
-create procedure timetrails.deregister()
-       external name timetrails.deregister;
-
--- set the scheduler periodic delay
-create procedure timetrails.period(n integer)
-       external name timetrails.period;
-
--- deliver a new basket with tuples
+-- The timetrails catalog contains the meta information about metric relations.
+CREATE TABLE timetrails.metrics (
+     name  string PRIMARY KEY,
+     auth  string,        --(for later) The owner ticket for this metric
+     credit integer,     --(for later)The volume of data allowed for this 
metric
+     precision string , --time stamp precision 
{millisecond,second,minute,hour,day,month,year, null}
+     retention string,  --time stamp interval 
{millisecond,second,minute,hour,day,month,year, null}
+     threshold integer, --max rows delayed in the Guardian cache
+     heartbeat integer, -- maximum delay (in ms) before forwarding
+     frozen boolean,    --once defined its structure can not be changed
+     title string,            --informative title
+     description string --short explanation);
 
-create procedure timetrails.heartbeat("schema" string, "table" string, msec 
integer)
-       external name timetrails.heartbeat;
-
-create procedure timetrails.heartbeat("schema" string, "table" string, msec 
bigint)
-       external name timetrails.heartbeat;
-
--- cleanup activities
-create procedure timetrails.tumble("schema" string, "table" string, elem 
integer)
-       external name timetrails.tumble;
-
-create procedure timetrails.window("schema" string, "table" string, elem 
integer)
-       external name timetrails.window;
-
-create procedure timetrails.cycles("schema" string, "query" string, elem 
integer)
-       external name timetrails.cycles;
-
--- Inspection tables
-create function timetrails.gettumble("schema" string, "table" string) returns 
integer
-external name timetrails.gettumble;
-
-create function timetrails.getwindow("schema" string, "table" string) returns 
integer
-external name timetrails.getwindow;
+--Return the names of all known metric relations
+CREATE FUNCTION timetrails.metrics()
+RETURNS TABLE (metric string)
+BEGIN
+    RETURN SELECT m.name FROM timetrails.metrics m ORDER BY m.name;
+END;
 
-create function timetrails.getheartbeat("schema" string, "table" string) 
returns bigint
-external name timetrails.getheartbeat;
-
-create function timetrails.baskets()
-returns table( "schema" string, "table" string, "status" string, winsize int, 
winstride int, timeslice int, timestride int, heartbeat int, seen timestamp, 
"count" bigint, events bigint)
-external name timetrails.baskets;
-
-create procedure timetrails.show("schema" string, "query" string)
-external name timetrails.show;
-
-create function timetrails.queries()
- returns table( "schema" string, "function" string, "status" string, lastrun 
timestamp, runs int, avgtime bigint, error string)
- external name timetrails.queries;
+--Return the tags associated with a metric relation
+CREATE FUNCTION timetrails.tags(metric string)
+RETURNS TABLE (colname string)
+BEGIN
+   RETURN SELECT o.name AS colname
+       FROM sys.objects o, sys.tables t, sys.keys k
+       WHERE o.id = k.id AND k.table_id = t.id AND t.name = metric ORDER BY 
o.nr;
+END;
 
-create function timetrails.inputs()
- returns table( "s" string, "t" string, "sch" string, "qry" string)
- external name timetrails.inputplaces;
+--Return the measure names for a metric relation
+CREATE FUNCTION timetrails.fields(metric string)
+RETURNS TABLE (colname string)
+BEGIN
+   RETURN SELECT c.name
+        FROM sys.columns c, sys.tables t
+        WHERE t.name= metric AND t.id = c.table_id AND
+              c.name NOT IN (SELECT o.name AS colname
+                        FROM sys.objects o, sys.tables tt, sys.keys k WHERE 
o.id = k.id AND k.table_id = tt.id AND tt.name = metric );
+END;
 
-create function timetrails.outputs()
- returns table( "s" string, "t" string, "sch" string, "qry" string)
- external name timetrails.outputplaces;
+--Return the preferred message layout and their type
+CREATE FUNCTION timetrails.getLayout(metric string)
+RETURNS TABLE( name string, type string)
+BEGIN
+   RETURN SELECT c.name, c.type FROM timetrails.metrics m, sys.tables t, 
sys.columns c WHERE m.name = metric AND t.name = m.name and c.table_id= t.id;
+END;
 
-create function timetrails.errors()
-returns table( "table" string, error string)
-external name timetrails.errors;
+--Return the time precision for a metric relation
+CREATE FUNCTION timetrails.getPrecision(metric string)
+RETURNS string
+BEGIN
+   RETURN SELECT m.precision FROM timetrails.metrics m WHERE m.name = metric;
+END;
 
--- tables for timetrailswebserver
-CREATE TABLE timetrails.webserverstreams (table_id INTEGER, base TINYINT, 
"interval" INTEGER NULL, unit CHAR(1) NULL);
+--Return the retention period of a metric relation
+CREATE FUNCTION timetrails.getRetention(metric string)
+RETURNS string
+BEGIN
+   RETURN SELECT m.retention FROM timetrails.metrics m WHERE m.name = metric;
+END;
+
+--Return the title annotation
+CREATE FUNCTION timetrails.getTitle(metric string)
+RETURNS string
+BEGIN
+   RETURN SELECT m.title FROM timetrails.metrics m WHERE m.name = metric;
+END;
+
+--Return the short help on a metric relation
+CREATE FUNCTION timetrails.getDescription(metric string)
+RETURNS string
+BEGIN
+   RETURN SELECT m.description FROM timetrails.metrics m WHERE m.name = metric;
+END;
+
diff --git a/sql/backends/monet5/timetrails/Makefile.ag 
b/sql/backends/monet5/timetrails/Makefile.ag
--- a/sql/backends/monet5/timetrails/Makefile.ag
+++ b/sql/backends/monet5/timetrails/Makefile.ag
@@ -36,9 +36,10 @@ INCLUDES = .. \
 lib_timetrails = {
        NOINST
        DIR = libdir/monetdb5
-       SOURCES = timetrails.c timetrails.h \
-               basket.c basket.h \
-               petrinet.c petrinet.h
+       SOURCES = 
+       #SOURCES = timetrails.c timetrails.h \
+               #basket.c basket.h \
+               #petrinet.c petrinet.h
        LIBS = ../../../../monetdb5/tools/libmonetdb5 \
                ../../../../gdk/libbat 
 }
diff --git a/sql/backends/monet5/timetrails/Tests/All 
b/sql/backends/monet5/timetrails/Tests/All
--- a/sql/backends/monet5/timetrails/Tests/All
+++ b/sql/backends/monet5/timetrails/Tests/All
@@ -1,8 +1,6 @@
-bug01
-bug02
-bug03
-bug04
-bug05
+demoschema
+loaddata
+
 iot00
 iot01
 iot02
diff --git a/sql/backends/monet5/timetrails/Tests/bug01.sql 
b/sql/backends/monet5/timetrails/Tests/bug01.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/bug01.sql
+++ /dev/null
@@ -1,1 +0,0 @@
-select * from iot.baskets();
diff --git a/sql/backends/monet5/timetrails/Tests/bug02.sql 
b/sql/backends/monet5/timetrails/Tests/bug02.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/bug02.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-set schema iot;
-set optimizer='iot_pipe';
-call iot.show('sys','test');
diff --git a/sql/backends/monet5/timetrails/Tests/bug03.sql 
b/sql/backends/monet5/timetrails/Tests/bug03.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/bug03.sql
+++ /dev/null
@@ -1,1 +0,0 @@
-call iot.deregister();
diff --git a/sql/backends/monet5/timetrails/Tests/bug04.sql 
b/sql/backends/monet5/timetrails/Tests/bug04.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/bug04.sql
+++ /dev/null
@@ -1,1 +0,0 @@
-call iot.period(1);
diff --git a/sql/backends/monet5/timetrails/Tests/bug05.sql 
b/sql/backends/monet5/timetrails/Tests/bug05.sql
deleted file mode 100644
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to