Changeset: 5bc31cb13c0a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5bc31cb13c0a
Added Files:
        sql/backends/monet5/Tests/cquery01.sql
Removed Files:
        sql/backends/monet5/timetrails/Tests/ais/Tests/All
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais01.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais02.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais03.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais04.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais05.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais06.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais07.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais08.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais09.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais10.sql
        sql/backends/monet5/timetrails/Tests/ais/Tests/ais11.sql
        sql/backends/monet5/timetrails/Tests/cquery00.sql
        sql/backends/monet5/timetrails/Tests/logger.sql
        sql/backends/monet5/timetrails/Tests/receptor00.sql
        sql/backends/monet5/timetrails/Tests/receptor01.sql
        sql/backends/monet5/timetrails/Tests/webtest.sql
        sql/backends/monet5/timetrails/Tests/x.ql
Modified Files:
        sql/backends/monet5/Tests/All
        sql/backends/monet5/timetrails/Tests/All
Branch: timetrails
Log Message:

Cleanup


diffs (truncated from 807 to 300 lines):

diff --git a/sql/backends/monet5/Tests/All b/sql/backends/monet5/Tests/All
--- a/sql/backends/monet5/Tests/All
+++ b/sql/backends/monet5/Tests/All
@@ -76,3 +76,5 @@ limithack
 shutdown
 
 HAVE_HGE?int_notation_1e5
+
+cquery01
diff --git a/sql/backends/monet5/Tests/cquery01.sql 
b/sql/backends/monet5/Tests/cquery01.sql
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/Tests/cquery01.sql
@@ -0,0 +1,2 @@
+-- inspect the status of all stream relations
+select * from streams.baskets();
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,23 +1,3 @@
 demoschema
 loaddata
 
-iot00
-iot01
-iot02
-iot03
-iot04
-iot06
-iot10
-iot11
-iot12
-iot13
-iot14
-#iot15
-iot16
-receptor00
-receptor01
-#petrinet00
-webtest
-inputoutput
-export00
-logger
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/All 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/All
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/All
+++ /dev/null
@@ -1,11 +0,0 @@
-ais01
-ais02
-ais03
-ais04
-ais05
-ais06
-ais07
-ais08
-ais09
-ais10
-ais11
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais01.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais01.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais01.sql
+++ /dev/null
@@ -1,34 +0,0 @@
-CREATE SCHEMA ais;
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels1 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels1' AND sch.name = 'ais';
-
---Q1 Calculate speed of ships (in knots) -- Stream only
-
-CREATE STREAM TABLE ais01r (calc_time timestamp, mmsi int, sog real);
-
-CREATE PROCEDURE ais01q()
-BEGIN  
-       INSERT INTO ais01r
-               WITH data_time AS (SELECT current_timestamp AS cur_time)
-               SELECT cur_time, mmsi, sog FROM vessels1 CROSS JOIN data_time 
WHERE (implicit_timestamp, mmsi) IN (SELECT max(implicit_timestamp), mmsi FROM 
vessels1 GROUP BY mmsi);
-END;
-
-CALL iot.query('ais', 'ais01q');
-CALL iot.pause();
--- We don't set the tumbling, so no tuple will be reused in the following 
window
-CALL iot.heartbeat('ais', 'vessels1', 8000);
-CALL iot.resume();
-
-CALL iot.pause();
-DELETE FROM iot.webserverstreams;
-DROP PROCEDURE ais01q;
-DROP TABLE vessels1;
-DROP TABLE ais01r;
-
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais02.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais02.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais02.sql
+++ /dev/null
@@ -1,32 +0,0 @@
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels2 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels2' AND sch.name = 'ais';
-
---Q2 Number of distinct ship in the last 8 seconds -- Stream only
-
-CREATE TABLE ais02r (calc_time timestamp, number_ships int);
-
-CREATE PROCEDURE ais02q()
-BEGIN
-       INSERT INTO ais02r
-               SELECT current_timestamp, count(DISTINCT mmsi) FROM vessels2;
-END;
-
-CALL iot.query('ais', 'ais02q');
-CALL iot.pause();
--- We don't set the tumbling, so no tuple will be reused in the following 
window
-CALL iot.heartbeat('ais', 'vessels2', 8000);
-CALL iot.resume();
-
-CALL iot.pause();
-DELETE FROM iot.webserverstreams;
-DROP PROCEDURE ais02q;
-DROP TABLE vessels2;
-DROP TABLE ais02r;
-
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais03.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais03.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais03.sql
+++ /dev/null
@@ -1,33 +0,0 @@
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels3 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels3' AND sch.name = 'ais';
-
---Q3 Currently anchorred ship -- Stream only
-
-CREATE TABLE ais03r (calc_time timestamp, mmsi int);
-
-CREATE PROCEDURE ais03q()
-BEGIN
-       INSERT INTO ais03r
-               WITH data_time AS (SELECT current_timestamp AS cur_time)
-               SELECT cur_time, mmsi FROM vessels3 CROSS JOIN data_time WHERE 
nav_status = 1 AND (implicit_timestamp, mmsi) IN (SELECT 
max(implicit_timestamp), mmsi FROM vessels3 GROUP BY mmsi);
-END;
-
-CALL iot.query('ais', 'ais03q');
-CALL iot.pause();
--- We don't set the tumbling, so no tuple will be reused in the following 
window
-CALL iot.heartbeat('ais', 'vessels3', 8000);
-CALL iot.resume();
-
-CALL iot.stop();
-DELETE FROM iot.webserverstreams;
-DROP PROCEDURE ais03q;
-DROP TABLE vessels3;
-DROP TABLE ais03r;
-
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais04.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais04.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais04.sql
+++ /dev/null
@@ -1,33 +0,0 @@
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels4 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels4' AND sch.name = 'ais';
-
---Q4 Ship turning degree > 180 -- Stream only
-
-CREATE STREAM TABLE ais04r (calc_time timestamp, mmsi int);
-
-CREATE PROCEDURE ais04q()
-BEGIN
-       INSERT INTO ais04r
-               WITH data_time AS (SELECT current_timestamp AS cur_time)
-               SELECT cur_time, mmsi FROM vessels4 CROSS JOIN data_time WHERE 
sys.abs(rotais) > 180 AND (implicit_timestamp, mmsi) IN (SELECT 
max(implicit_timestamp), mmsi FROM vessels4 GROUP BY mmsi);
-END;
-
-CALL iot.query('ais', 'ais04q');
-CALL iot.pause();
--- We don't set the tumbling, so no tuple will be reused in the following 
window
-CALL iot.heartbeat('ais', 'vessels4', 8000);
-CALL iot.resume();
-
-CALL iot.pause();
-DELETE FROM iot.webserverstreams;
-DROP PROCEDURE ais04q;
-DROP TABLE vessels4;
-DROP TABLE ais04r;
-
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais05.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais05.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais05.sql
+++ /dev/null
@@ -1,47 +0,0 @@
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Calculate distance in kms between two coordinates: 
http://www.movable-type.co.uk/scripts/latlong.html
--- Therefore we don't need to create a geometry element when working only with 
stream data (the iot web server doesn't support geom types yet)
-CREATE FUNCTION km_distance(lat1 FLOAT, lon1 FLOAT, lat2 FLOAT, lon2 FLOAT) 
RETURNS FLOAT
-BEGIN
-       DECLARE deg_to_rad FLOAT, deg_to_rad_div FLOAT, aux FLOAT;
-       SET deg_to_rad = pi() / 180;
-       SET deg_to_rad_div = deg_to_rad / 2;
-       SET aux = sys.power(sys.sin((lat2 - lat1) * deg_to_rad_div), 2) + 
sys.cos(lat1 * deg_to_rad) * sys.cos(lat2 * deg_to_rad) * 
sys.power(sys.sin((lon2 - lon1) * deg_to_rad_div), 2);
-       RETURN 12742 * sys.atan(sys.sqrt(aux), sys.sqrt(1 - aux));
-END;
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels5 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels5' AND sch.name = 'ais';
-
---Q5 Closest ship to each other -- Stream only
-
-CREATE TABLE ais05r (calc_time timestamp, mmsi1 int, mmsi2 int, distance 
float);
-
-CREATE PROCEDURE ais05q()
-BEGIN
-       INSERT INTO ais05r 
-               WITH data AS (SELECT mmsi, lat, lon FROM vessels5 WHERE 
(implicit_timestamp, mmsi) IN (SELECT max(implicit_timestamp), mmsi FROM 
vessels5 GROUP BY mmsi)),
-               distances AS (SELECT d1.mmsi AS mmsi1, d2.mmsi AS mmsi2, 
km_distance(d1.lat, d1.lon, d2.lat, d2.lon) AS distance FROM data d1 INNER JOIN 
data d2 ON d1.mmsi <> d2.mmsi),
-               data_time AS (SELECT current_timestamp AS cur_time)
-               SELECT cur_time, mmsi1, mmsi2, distance FROM distances CROSS 
JOIN data_time WHERE (mmsi1, distance) IN (SELECT mmsi1, min(distance) FROM 
distances GROUP BY mmsi1);
-END;
-
-CALL iot.query('ais', 'ais05q');
-CALL iot.pause();
--- We don't set the tumbling, so no tuple will be reused in the following 
window
-CALL iot.heartbeat('ais', 'vessels5', 8000);
-CALL iot.resume();
-
-CALL iot.pause();
-DELETE FROM iot.webserverstreams;
-DROP PROCEDURE ais05q;
-DROP FUNCTION km_distance;
-DROP TABLE vessels5;
-DROP TABLE ais05r;
-
diff --git a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais06.sql 
b/sql/backends/monet5/timetrails/Tests/ais/Tests/ais06.sql
deleted file mode 100644
--- a/sql/backends/monet5/timetrails/Tests/ais/Tests/ais06.sql
+++ /dev/null
@@ -1,54 +0,0 @@
-SET SCHEMA ais;
-SET optimizer = 'iot_pipe';
-
--- Calculate distance in kms between two coordinates: 
http://www.movable-type.co.uk/scripts/latlong.html
--- Therefore we don't need to create a geometry element when working only with 
stream data (the iot web server doesn't support geom types yet)
-CREATE FUNCTION km_distance(lat1 FLOAT, lon1 FLOAT, lat2 FLOAT, lon2 FLOAT) 
RETURNS FLOAT
-BEGIN
-       DECLARE deg_to_rad FLOAT, deg_to_rad_div FLOAT, aux FLOAT;
-       SET deg_to_rad = pi() / 180;
-       SET deg_to_rad_div = deg_to_rad / 2;
-       SET aux = sys.power(sys.sin((lat2 - lat1) * deg_to_rad_div), 2) + 
sys.cos(lat1 * deg_to_rad) * sys.cos(lat2 * deg_to_rad) * 
sys.power(sys.sin((lon2 - lon1) * deg_to_rad_div), 2);
-       RETURN 12742 * sys.atan(sys.sqrt(aux), sys.sqrt(1 - aux));
-END;
-
--- Vessels positions reports table based on AIS messages types 1, 2 and 3
-CREATE STREAM TABLE vessels6 (implicit_timestamp timestamp, mmsi int, lat 
real, lon real, nav_status smallint, sog real, rotais smallint);
--- Stations positions reports table based on AIS message type 4
-CREATE STREAM TABLE stations (implicit_timestamp timestamp, mmsi int, lat 
real, lon real);
-
--- Position reports are sent every 3-5 seconds so is resonable to consume the 
tuples arrived on the last 8 seconds
--- Inserts for iot web server (providing time based flush of 8 seconds)
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'vessels6' AND sch.name = 'ais';
-
-INSERT INTO iot.webserverstreams SELECT tabl.id, 2 , 8, 's' FROM sys.tables 
tabl INNER JOIN sys.schemas sch ON tabl.schema_id = sch.id WHERE tabl.name = 
'stations' AND sch.name = 'ais';
-
---Q6 For each station calulate ship within a radios of 3 km -- Stream join
-
-CREATE STREAM TABLE ais06r (calc_time timestamp, smmsi int, vmmsi int, 
distance float);
-
-CREATE PROCEDURE ais06q()
-BEGIN
-       INSERT INTO ais06r
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to