Changeset: 2e7569bd3346 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2e7569bd3346
Added Files:
sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.SQL.py
sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.err
sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.out
Modified Files:
sql/test/Users/Tests/All
sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.err
sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.err
sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.out
sql/test/Users/Tests/grantMonetdb.SQL.py
sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.SQL.py
sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.stable.err
sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.stable.out
Branch: default
Log Message:
Commit merge
diffs (truncated from 518 to 300 lines):
diff --git a/sql/test/Users/Tests/All b/sql/test/Users/Tests/All
--- a/sql/test/Users/Tests/All
+++ b/sql/test/Users/Tests/All
@@ -1,3 +1,4 @@
+dropManyUsers.Bug-3764
schema
role1
role2
@@ -20,6 +21,6 @@ grantAndRevokeUserLogedIN.Bug-3476
grantRevokeAndGrantAgain.Bug-3765
grantMonetdbToRegularUser.Bug-3771
grantMonetdbToSchemaOwner.Bug-3771
+grantPrivilegesNonDefaultRole.Bug-3365
grantRole.Bug-3772
grantMonetdb
-dropManyUsers.Bug-3764
diff --git a/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.err
b/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.err
--- a/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.err
+++ b/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.err
@@ -1,4 +1,4 @@
-stderr of test 'dropManyUsers` in directory 'sql/test/Users` itself:
+stderr of test 'dropManyUsers.Bug-3764` in directory 'sql/test/Users` itself:
# 14:28:36 >
@@ -28,14 +28,7 @@ stderr of test 'dropManyUsers` in direct
+# 14:49:14 >
+# 14:49:14 > "Done."
+# 14:49:14 >
-
-MAPI = (monetdb) /var/tmp/mtest-23837/.s.monetdb.35821
-ACTION= mapi_query_done
-QUERY = DROP USER user4;
-
-
-# 14:34:37 >
-# 14:34:37 > "Done."
-# 14:34:37 >
-
diff --git a/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
b/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
--- a/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
+++ b/sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
@@ -1,4 +1,4 @@
-stdout of test 'dropManyUsers` in directory 'sql/test/Users` itself:
+stdout of test 'dropManyUsers.Bug-3764` in directory 'sql/test/Users` itself:
# 14:28:36 >
@@ -75,10 +75,10 @@ Ready.
% varchar, varchar, int # type
% 7, 13, 4 # length
[ "monetdb", "MonetDB Admin", 2000 ]
-[ "user1", "1st user", 6992 ]
-[ "user2", "2nd user", 6992 ]
-[ "user3", "3rd user", 6992 ]
-[ "user4", "4th user", 6992 ]
+[ "user1", "1st user", 6995 ]
+[ "user2", "2nd user", 6995 ]
+[ "user3", "3rd user", 6995 ]
+[ "user4", "4th user", 6995 ]
#DROP USER user1;
#DROP USER user2;
#DROP USER user3;
diff --git a/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.err
b/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.err
--- a/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.err
+++ b/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.err
@@ -1,4 +1,4 @@
-stderr of test 'grantAndRevokeUserLogedIN` in directory 'sql/test/Users`
itself:
+stderr of test 'grantAndRevokeUserLogedIN.Bug-3476` in directory
'sql/test/Users` itself:
# 10:42:58 >
@@ -31,17 +31,17 @@ stderr of test 'grantAndRevokeUserLogedI
# 10:42:59 >
Traceback (most recent call last):
- File "grantAndRevokeUserLogedIN.SQL.py", line 39, in <module>
+ File "grantAndRevokeUserLogedIN.Bug-3476.SQL.py", line 54, in <module>
run(c2, 'UPDATE test SET x = -66 WHERE y = 66')
- File "grantAndRevokeUserLogedIN.SQL.py", line 26, in run
+ File "grantAndRevokeUserLogedIN.Bug-3476.SQL.py", line 26, in run
r = conn.execute(sql)
- File
"/home/vera/Desktop/MonetDB/installation/lib/python2.7/site-packages/monetdb/sql/connections.py",
line 127, in execute
+ File
"/home/vera/Desktop/MonetDB/BUILD/lib/python2.7/site-packages/monetdb/sql/connections.py",
line 127, in execute
return self.command('s' + query + '\n;')
- File
"/home/vera/Desktop/MonetDB/installation/lib/python2.7/site-packages/monetdb/sql/connections.py",
line 132, in command
+ File
"/home/vera/Desktop/MonetDB/BUILD/lib/python2.7/site-packages/monetdb/sql/connections.py",
line 132, in command
return self.mapi.cmd(command)
- File
"/home/vera/Desktop/MonetDB/installation/lib/python2.7/site-packages/monetdb/mapi.py",
line 178, in cmd
+ File
"/home/vera/Desktop/MonetDB/BUILD/lib/python2.7/site-packages/monetdb/mapi.py",
line 178, in cmd
raise OperationalError(response[1:])
-monetdb.exceptions.OperationalError: UPDATE: insufficient privileges for user
'new_user' to update table 'test' on column 'x'
+monetdb.exceptions.OperationalError: UPDATE: insufficient privileges for user
'new_user' to update table 'test'
# 10:42:59 >
diff --git a/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.out
b/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.out
--- a/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.out
+++ b/sql/test/Users/Tests/grantAndRevokeUserLogedIN.Bug-3476.stable.out
@@ -1,4 +1,4 @@
-stdout of test 'grantAndRevokeUserLogedIN` in directory 'sql/test/Users`
itself:
+stdout of test 'grantAndRevokeUserLogedIN.Bug-3476` in directory
'sql/test/Users` itself:
# 10:44:33 >
diff --git a/sql/test/Users/Tests/grantMonetdb.SQL.py
b/sql/test/Users/Tests/grantMonetdb.SQL.py
--- a/sql/test/Users/Tests/grantMonetdb.SQL.py
+++ b/sql/test/Users/Tests/grantMonetdb.SQL.py
@@ -1,6 +1,6 @@
###
-# Assess that the admin can change the password of a user.
-# Assess that a user can change its own password.
+# Grant monetdb rights to a user.
+# Verify that the user can assume the monetdb role and CREATE new users, GRANT
privileges and roles.
###
from util import sql_test_client
diff --git a/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.SQL.py
b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.SQL.py
@@ -0,0 +1,23 @@
+###
+# Let a user inherit the rights of monetdb.
+# Check that by assuming the monetdb role the user has complete privileges
(e.g. select, create, drop).
+###
+
+
+from util import sql_test_client
+
+sql_test_client('monetdb', 'monetdb', input = """\
+create role hr_role;
+create schema hr authorization hr_role;
+create user blake with password 'password' name 'Blake' schema "hr";
+create user clark with password 'password' name 'Clark' schema "hr";
+grant hr_role to blake;
+""")
+
+sql_test_client('blake', 'password', input = """\
+set role hr_role;
+create table employees (id bigint,name varchar(20));
+grant select on employees to clark;
+grant select on employees to clark from current_role;
+""")
+
diff --git
a/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.err
b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'grantPrivilegesNonDefaultRole.Bug-3365` in directory
'sql/test/Users` itself:
+
+
+# 17:10:01 >
+# 17:10:01 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"mapi_open=true" "--set" "mapi_port=32045" "--set"
"mapi_usock=/var/tmp/mtest-24011/.s.monetdb.32045" "--set" "monet_prompt="
"--forcemito" "--set" "mal_listing=2"
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users"
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 17:10:01 >
+
+# builtin opt gdk_dbpath =
/home/vera/Desktop/MonetDB/BUILD/var/monetdb5/dbfarm/demo
+# builtin opt gdk_debug = 0
+# builtin opt gdk_vmtrim = no
+# builtin opt monet_prompt = >
+# builtin opt monet_daemon = no
+# builtin opt mapi_port = 50000
+# builtin opt mapi_open = false
+# builtin opt mapi_autosense = false
+# builtin opt sql_optimizer = default_pipe
+# builtin opt sql_debug = 0
+# cmdline opt gdk_nr_threads = 0
+# cmdline opt mapi_open = true
+# cmdline opt mapi_port = 32045
+# cmdline opt mapi_usock = /var/tmp/mtest-24011/.s.monetdb.32045
+# cmdline opt monet_prompt =
+# cmdline opt mal_listing = 2
+# cmdline opt gdk_dbpath =
/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users
+# cmdline opt mal_listing = 0
+# cmdline opt embedded_r = yes
+# cmdline opt gdk_debug = 536870922
+
+# 17:10:02 >
+# 17:10:02 > "/usr/bin/python2"
"grantPrivilegesNonDefaultRole.Bug-3365.SQL.py"
"grantPrivilegesNonDefaultRole.Bug-3365"
+# 17:10:02 >
+
+
+# 17:10:02 >
+# 17:10:02 > "Done."
+# 17:10:02 >
+
diff --git
a/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.out
b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/Users/Tests/grantPrivilegesNonDefaultRole.Bug-3365.stable.out
@@ -0,0 +1,44 @@
+stdout of test 'grantPrivilegesNonDefaultRole.Bug-3365` in directory
'sql/test/Users` itself:
+
+
+# 17:10:01 >
+# 17:10:01 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"mapi_open=true" "--set" "mapi_port=32045" "--set"
"mapi_usock=/var/tmp/mtest-24011/.s.monetdb.32045" "--set" "monet_prompt="
"--forcemito" "--set" "mal_listing=2"
"--dbpath=/home/vera/Desktop/MonetDB/BUILD/var/MonetDB/mTests_sql_test_Users"
"--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 17:10:01 >
+
+# MonetDB 5 server v11.22.0
+# This is an unreleased version
+# Serving database 'mTests_sql_test_Users', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit
integers dynamically linked
+# Found 3.746 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://buzu:32045/
+# Listening for UNIX domain connection requests on
mapi:monetdb:///var/tmp/mtest-24011/.s.monetdb.32045
+# Start processing logs sql/sql_logs version 52200
+# Start reading the write-ahead log 'sql_logs/sql/log.19'
+# Finished reading the write-ahead log 'sql_logs/sql/log.19'
+# Finished processing logs sql/sql_logs
+# MonetDB/SQL module loaded
+# MonetDB/R module loaded
+
+Ready.
+
+# 17:10:02 >
+# 17:10:02 > "/usr/bin/python2"
"grantPrivilegesNonDefaultRole.Bug-3365.SQL.py"
"grantPrivilegesNonDefaultRole.Bug-3365"
+# 17:10:02 >
+
+#create role hr_role;
+#create schema hr authorization hr_role;
+#create user blake with password 'password' name 'Blake' schema "hr";
+#create user clark with password 'password' name 'Clark' schema "hr";
+#grant hr_role to blake;
+#set role hr_role;
+#create table employees (id bigint,name varchar(20));
+#grant select on employees to clark;
+#grant select on employees to clark from current_role;
+
+# 17:10:02 >
+# 17:10:02 > "Done."
+# 17:10:02 >
+
diff --git a/sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.SQL.py
b/sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.SQL.py
--- a/sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.SQL.py
+++ b/sql/test/Users/Tests/grantRevokeAndGrantAgain.Bug-3765.SQL.py
@@ -30,13 +30,12 @@ GRANT SELECT on table schemaTest.testTab
""")
sql_test_client('user_delete', 'delete', input = """\
--- Check delete.
-DELETE FROM testTable where v1 = 2;
+DELETE FROM testTable where v1 = 2; -- should work
-- Check all the other privileges (they should fail).
-SELECT * FROM testTable;
-UPDATE testTable set v1 = 2 where v2 = 7;
-INSERT into testTable values (3, 3);
+SELECT * FROM testTable; -- not enough privileges
+UPDATE testTable set v1 = 2 where v2 = 7; -- not enough privileges
+INSERT into testTable values (3, 3); -- not enough privileges
""")
sql_test_client('user_update', 'update', input = """\
@@ -44,9 +43,9 @@ sql_test_client('user_update', 'update',
UPDATE testTable set v1 = 2 where v2 = 7;
-- Check all the other privileges (they should fail).
-SELECT * FROM testTable;
-INSERT into testTable values (3, 3);
-DELETE FROM testTable where v1 = 2;
+SELECT * FROM testTable; -- not enough privileges
+INSERT into testTable values (3, 3); -- not enough privileges
+DELETE FROM testTable where v1 = 2; -- not enough privileges
""")
sql_test_client('user_insert', 'insert', input = """\
@@ -54,9 +53,9 @@ sql_test_client('user_insert', 'insert',
INSERT into testTable values (3, 3);
-- Check all the other privileges (they should fail).
-SELECT * FROM testTable;
-UPDATE testTable set v1 = 2 where v2 = 7;
-DELETE FROM testTable where v1 = 2;
+SELECT * FROM testTable; -- not enough privileges
+UPDATE testTable set v1 = 2 where v2 = 7; -- not enough privileges
+DELETE FROM testTable where v1 = 2; -- not enough privileges
""")
sql_test_client('user_select', 'select', input = """\
@@ -64,9 +63,9 @@ sql_test_client('user_select', 'select',
SELECT * FROM testTable;
-- Check all the other privileges (they should fail).
-INSERT into testTable values (3, 3);
-UPDATE testTable set v1 = 2 where v2 = 7;
-DELETE FROM testTable where v1 = 2;
+INSERT into testTable values (3, 3); -- not enough privileges
+UPDATE testTable set v1 = 2 where v2 = 7; -- not enough privileges
+DELETE FROM testTable where v1 = 2; -- not enough privileges
""")
sql_test_client('monetdb', 'monetdb', input = """\
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list