Changeset: fcd5e4ac0da5 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fcd5e4ac0da5
Modified Files:
MonetDB.spec
buildtools/selinux/monetdb.te
clients/ChangeLog
clients/mapiclient/stethoscope.c
monetdb5/mal/mal_profiler.c
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/testdb-upgrade/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
tools/merovingian/utils/properties.c
tools/merovingian/utils/utils.c
Branch: jitudf
Log Message:
Merge.
diffs (truncated from 39730 to 300 lines):
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -998,6 +998,7 @@ fi
make %{?_smp_mflags}
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
cd buildtools/selinux
for selinuxvariant in %{selinux_variants}
do
@@ -1006,6 +1007,7 @@ do
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
done
cd -
+%endif
%install
%make_install
@@ -1022,6 +1024,7 @@ rm -f %{buildroot}%{_libdir}/monetdb5/*.
# internal development stuff
rm -f %{buildroot}%{_bindir}/Maddlog
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
for selinuxvariant in %{selinux_variants}
do
install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
@@ -1029,6 +1032,7 @@ do
%{buildroot}%{_datadir}/selinux/${selinuxvariant}/monetdb.pp
done
/usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
+%endif
%post -p /sbin/ldconfig
diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te
--- a/buildtools/selinux/monetdb.te
+++ b/buildtools/selinux/monetdb.te
@@ -14,7 +14,7 @@ init_daemon_domain(monetdbd_t, monetdbd_
# mserver5_exec_t which must then transition to the mserver5_t domain
type mserver5_t; # mserver5 when run by monetdbd (monetdbd_t)
type mserver5_exec_t; # /usr/bin/mserver5
-application_domain(mserver5_t, mserver5_exec_t)
+init_daemon_domain(mserver5_t, mserver5_exec_t)
# see
https://selinuxproject.org/page/NB_Domain_and_Object_Transitions#Domain_Transition
allow monetdbd_t mserver5_t:process transition;
allow monetdbd_t mserver5_exec_t:file { execute open read getattr };
diff --git a/clients/ChangeLog b/clients/ChangeLog
--- a/clients/ChangeLog
+++ b/clients/ChangeLog
@@ -1,3 +1,10 @@
# ChangeLog file for clients
# This file is updated with Maddlog
+* Mon Jul 17 2017 Panagiotis Koutsourakis <[email protected]>
+- Add a new pretty printing option to stethoscope
+ Running stethoscope with the flag -j will produce not pretty printed
+ output (one json object per line). Running with the -y flag will produce
+ pretty printed output. Running with neither, wiil produce the legacy,
+ line oriented format
+
diff --git a/clients/mapiclient/stethoscope.c b/clients/mapiclient/stethoscope.c
--- a/clients/mapiclient/stethoscope.c
+++ b/clients/mapiclient/stethoscope.c
@@ -72,6 +72,7 @@ static char hostname[128];
static char *filename = NULL;
static int beat = 0;
static int json = 0;
+static int stream_mode = 1;
static Mapi dbh;
static MapiHdl hdl = NULL;
static FILE *trace = NULL;
@@ -201,11 +202,12 @@ usageStethoscope(void)
fprintf(stderr, " -h | --host=<hostname>\n");
fprintf(stderr, " -c | --convert=<old formated file>\n");
fprintf(stderr, " -j | --json\n");
+ fprintf(stderr, " -y | --pretty (implies --json)\n");
fprintf(stderr, " -o | --output=<file>\n");
- fprintf(stderr, " -b | --beat=<delay> in milliseconds (default 50)\n");
- fprintf(stderr, " -D | --debug\n");
+ fprintf(stderr, " -b | --beat=<delay> in milliseconds (default 50)\n");
+ fprintf(stderr, " -D | --debug\n");
fprintf(stderr, " -? | --help\n");
- exit(-1);
+ exit(-1);
}
/* Any signal should be captured and turned into a graceful
@@ -242,7 +244,7 @@ main(int argc, char **argv)
int done = 0;
EventRecord *ev = malloc(sizeof(EventRecord));
- static struct option long_options[12] = {
+ static struct option long_options[13] = {
{ "dbname", 1, 0, 'd' },
{ "user", 1, 0, 'u' },
{ "port", 1, 0, 'p' },
@@ -251,6 +253,7 @@ main(int argc, char **argv)
{ "help", 0, 0, '?' },
{ "convert", 1, 0, 'c'},
{ "json", 0, 0, 'j'},
+ { "pretty", 0, 0, 'y'},
{ "output", 1, 0, 'o' },
{ "debug", 0, 0, 'D' },
{ "beat", 1, 0, 'b' },
@@ -268,7 +271,7 @@ main(int argc, char **argv)
while (1) {
int option_index = 0;
- int c = getopt_long(argc, argv, "d:u:p:P:h:?jo:Db:",
+ int c = getopt_long(argc, argv, "d:u:p:P:h:?jyo:Db:",
long_options, &option_index);
if (c == -1)
break;
@@ -310,6 +313,11 @@ main(int argc, char **argv)
break;
case 'j':
json = 1;
+ stream_mode = 3;
+ break;
+ case 'y':
+ stream_mode = 1;
+ json = 1;
break;
case 'o':
filename = strdup(optarg);
@@ -326,6 +334,7 @@ main(int argc, char **argv)
exit(-1);
}
}
+
if( conversion){
convertOldFormat(conversion);
return 0;
@@ -384,7 +393,7 @@ main(int argc, char **argv)
fprintf(stderr,"-- %s\n",buf);
doQ(buf);
- snprintf(buf, BUFSIZ, " profiler.openstream(1);");
+ snprintf(buf, BUFSIZ, " profiler.openstream(%d);", stream_mode);
if( debug)
fprintf(stderr,"--%s\n",buf);
doQ(buf);
diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c
--- a/monetdb5/mal/mal_profiler.c
+++ b/monetdb5/mal/mal_profiler.c
@@ -314,7 +314,7 @@ This information can be used to determin
GDKfree(tname);
logadd("}%s%s", (j< pci->argc-1 && j !=
pci->retc -1?",":""), pret);
}
- logadd("] %s",prettify); // end marker for arguments
+ logadd("]%s",prettify); // end marker for arguments
}
}
#endif
@@ -434,7 +434,7 @@ profilerEvent(MalBlkPtr mb, MalStkPtr st
if( sqlProfiling && !start )
cachedProfilerEvent(mb, stk, pci);
-
+
if( eventstream) {
renderProfilerEvent(mb, stk, pci, start, usrname);
if ( start && pci->pc ==0)
@@ -471,7 +471,7 @@ openProfilerStream(stream *fd, int mode)
closeProfilerStream();
malProfileMode = -1;
eventstream = fd;
- prettify = (mode & PROFSINGLELINE) ? " ": "\n";
+ prettify = (mode & PROFSINGLELINE) ? "": "\n";
/* show all in progress instructions for stethoscope startup */
if( (mode & PROFSHOWRUNNING) > 0){
diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
--- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
+++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
@@ -25,65 +25,9 @@ stdout of test 'upgrade` in directory 's
Ready.
-Running database upgrade commands:
-set schema "sys";
-delete from sys._columns where table_id = (select id from sys._tables where
name = 'connections' and schema_id = (select id from sys.schemas where name =
'sys'));
-delete from sys._tables where name = 'connections' and schema_id = (select id
from sys.schemas where name = 'sys');
-update sys.functions set side_effect = false where name in ('like', 'ilike')
and schema_id = (select id from sys.schemas where name = 'sys');
-drop function sys.malfunctions;
-create function sys.malfunctions() returns table("module" string, "function"
string, "signature" string, "address" string, "comment" string) external name
"manual"."functions";
-drop function sys.optimizer_stats();
-create function sys.optimizer_stats() returns table (optname string, count
int, timing bigint) external name inspect.optimizer_stats;
-insert into sys.systemfunctions (select id from sys.functions where name in
('malfunctions', 'optimizer_stats') and schema_id = (select id from sys.schemas
where name = 'sys') and id not in (select function_id from
sys.systemfunctions));
-create function profiler.getlimit() returns integer external name
profiler.getlimit;
-create procedure profiler.setlimit(lim integer) external name
profiler.setlimit;
-drop procedure profiler.setpoolsize;
-drop procedure profiler.setstream;
-insert into sys.systemfunctions (select id from sys.functions where name in
('getlimit', 'setlimit') and schema_id = (select id from sys.schemas where name
= 'profiler') and id not in (select function_id from sys.systemfunctions));
-ALTER TABLE sys.keywords SET READ ONLY;
-ALTER TABLE sys.table_types SET READ ONLY;
-ALTER TABLE sys.dependency_types SET READ ONLY;
-CREATE TABLE sys.function_types (
-function_type_id SMALLINT NOT NULL PRIMARY KEY,
-function_type_name VARCHAR(30) NOT NULL UNIQUE);
-INSERT INTO sys.function_types (function_type_id, function_type_name) VALUES
-(1, 'Scalar function'), (2, 'Procedure'), (3, 'Aggregate function'), (4,
'Filter function'), (5, 'Function returning a table'),
-(6, 'Analytic function'), (7, 'Loader function');
-ALTER TABLE sys.function_types SET READ ONLY;
-CREATE TABLE sys.function_languages (
-language_id SMALLINT NOT NULL PRIMARY KEY,
-language_name VARCHAR(20) NOT NULL UNIQUE);
-INSERT INTO sys.function_languages (language_id, language_name) VALUES
-(0, 'Internal C'), (1, 'MAL'), (2, 'SQL'), (3, 'R'), (6, 'Python'), (7,
'Python Mapped'), (8, 'Python2'), (9, 'Python2 Mapped'), (10, 'Python3'), (11,
'Python3 Mapped');
-ALTER TABLE sys.function_languages SET READ ONLY;
-CREATE TABLE sys.key_types (
-key_type_id SMALLINT NOT NULL PRIMARY KEY,
-key_type_name VARCHAR(15) NOT NULL UNIQUE);
-INSERT INTO sys.key_types (key_type_id, key_type_name) VALUES
-(0, 'Primary Key'), (1, 'Unique Key'), (2, 'Foreign Key');
-ALTER TABLE sys.key_types SET READ ONLY;
-CREATE TABLE sys.index_types (
-index_type_id SMALLINT NOT NULL PRIMARY KEY,
-index_type_name VARCHAR(25) NOT NULL UNIQUE);
-INSERT INTO sys.index_types (index_type_id, index_type_name) VALUES
-(0, 'Hash'), (1, 'Join'), (2, 'Order preserving hash'), (3, 'No-index'), (4,
'Imprint'), (5, 'Ordered');
-ALTER TABLE sys.index_types SET READ ONLY;
-CREATE TABLE sys.privilege_codes (
-privilege_code_id INT NOT NULL PRIMARY KEY,
-privilege_code_name VARCHAR(30) NOT NULL UNIQUE);
-INSERT INTO sys.privilege_codes (privilege_code_id, privilege_code_name) VALUES
-(1, 'SELECT'), (2, 'UPDATE'), (4, 'INSERT'), (8, 'DELETE'), (16, 'EXECUTE'),
(32, 'GRANT'),
-(3, 'SELECT,UPDATE'), (5, 'SELECT,INSERT'), (6, 'INSERT,UPDATE'), (7,
'SELECT,INSERT,UPDATE'),
-(9, 'SELECT,DELETE'), (10, 'UPDATE,DELETE'), (11, 'SELECT,UPDATE,DELETE'),
(12, 'INSERT,DELETE'),
-(13, 'SELECT,INSERT,DELETE'), (14, 'INSERT,UPDATE,DELETE'), (15,
'SELECT,INSERT,UPDATE,DELETE');
-ALTER TABLE sys.privilege_codes SET READ ONLY;
-update sys._tables set system = true where name in ('function_languages',
'function_types', 'index_types', 'key_types', 'privilege_codes') and schema_id
= (select id from sys.schemas where name = 'sys');
-delete from sys.systemfunctions where function_id not in (select id from
sys.functions);
-set schema "sys";
-
-# 15:26:18 >
-# 15:26:18 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e"
"--host=/var/tmp/mtest-21187" "--port=38946"
-# 15:26:18 >
+# 13:33:15 >
+# 13:33:15 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e"
"--host=/var/tmp/mtest-32047" "--port=35791"
+# 13:33:15 >
#select 1;
% .L2 # table_name
diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
--- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
+++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
@@ -25,65 +25,9 @@ stdout of test 'upgrade` in directory 's
Ready.
-Running database upgrade commands:
-set schema "sys";
-delete from sys._columns where table_id = (select id from sys._tables where
name = 'connections' and schema_id = (select id from sys.schemas where name =
'sys'));
-delete from sys._tables where name = 'connections' and schema_id = (select id
from sys.schemas where name = 'sys');
-update sys.functions set side_effect = false where name in ('like', 'ilike')
and schema_id = (select id from sys.schemas where name = 'sys');
-drop function sys.malfunctions;
-create function sys.malfunctions() returns table("module" string, "function"
string, "signature" string, "address" string, "comment" string) external name
"manual"."functions";
-drop function sys.optimizer_stats();
-create function sys.optimizer_stats() returns table (optname string, count
int, timing bigint) external name inspect.optimizer_stats;
-insert into sys.systemfunctions (select id from sys.functions where name in
('malfunctions', 'optimizer_stats') and schema_id = (select id from sys.schemas
where name = 'sys') and id not in (select function_id from
sys.systemfunctions));
-create function profiler.getlimit() returns integer external name
profiler.getlimit;
-create procedure profiler.setlimit(lim integer) external name
profiler.setlimit;
-drop procedure profiler.setpoolsize;
-drop procedure profiler.setstream;
-insert into sys.systemfunctions (select id from sys.functions where name in
('getlimit', 'setlimit') and schema_id = (select id from sys.schemas where name
= 'profiler') and id not in (select function_id from sys.systemfunctions));
-ALTER TABLE sys.keywords SET READ ONLY;
-ALTER TABLE sys.table_types SET READ ONLY;
-ALTER TABLE sys.dependency_types SET READ ONLY;
-CREATE TABLE sys.function_types (
-function_type_id SMALLINT NOT NULL PRIMARY KEY,
-function_type_name VARCHAR(30) NOT NULL UNIQUE);
-INSERT INTO sys.function_types (function_type_id, function_type_name) VALUES
-(1, 'Scalar function'), (2, 'Procedure'), (3, 'Aggregate function'), (4,
'Filter function'), (5, 'Function returning a table'),
-(6, 'Analytic function'), (7, 'Loader function');
-ALTER TABLE sys.function_types SET READ ONLY;
-CREATE TABLE sys.function_languages (
-language_id SMALLINT NOT NULL PRIMARY KEY,
-language_name VARCHAR(20) NOT NULL UNIQUE);
-INSERT INTO sys.function_languages (language_id, language_name) VALUES
-(0, 'Internal C'), (1, 'MAL'), (2, 'SQL'), (3, 'R'), (6, 'Python'), (7,
'Python Mapped'), (8, 'Python2'), (9, 'Python2 Mapped'), (10, 'Python3'), (11,
'Python3 Mapped');
-ALTER TABLE sys.function_languages SET READ ONLY;
-CREATE TABLE sys.key_types (
-key_type_id SMALLINT NOT NULL PRIMARY KEY,
-key_type_name VARCHAR(15) NOT NULL UNIQUE);
-INSERT INTO sys.key_types (key_type_id, key_type_name) VALUES
-(0, 'Primary Key'), (1, 'Unique Key'), (2, 'Foreign Key');
-ALTER TABLE sys.key_types SET READ ONLY;
-CREATE TABLE sys.index_types (
-index_type_id SMALLINT NOT NULL PRIMARY KEY,
-index_type_name VARCHAR(25) NOT NULL UNIQUE);
-INSERT INTO sys.index_types (index_type_id, index_type_name) VALUES
-(0, 'Hash'), (1, 'Join'), (2, 'Order preserving hash'), (3, 'No-index'), (4,
'Imprint'), (5, 'Ordered');
-ALTER TABLE sys.index_types SET READ ONLY;
-CREATE TABLE sys.privilege_codes (
-privilege_code_id INT NOT NULL PRIMARY KEY,
-privilege_code_name VARCHAR(30) NOT NULL UNIQUE);
-INSERT INTO sys.privilege_codes (privilege_code_id, privilege_code_name) VALUES
-(1, 'SELECT'), (2, 'UPDATE'), (4, 'INSERT'), (8, 'DELETE'), (16, 'EXECUTE'),
(32, 'GRANT'),
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list