mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
d74414399d
10.0 files
83 lines
2.6 KiB
Text
83 lines
2.6 KiB
Text
# Session connect attributes test
|
|
--source include/have_perfschema.inc
|
|
|
|
# although the connection attributes transfer code works
|
|
# with embedded P_S is not active, so the test won't run.
|
|
# TODO: remove this when P_S works with embedded.
|
|
--source include/not_embedded.inc
|
|
|
|
# make sure we're alone
|
|
let $count_sessions= 1;
|
|
--source include/wait_until_count_sessions.inc
|
|
|
|
# basic performance_schema.session_connect_attrs tests
|
|
|
|
# check the presense of the pre-defined attributes
|
|
--echo # must return 0, 6
|
|
SELECT SUM(ISNULL(ATTR_VALUE)), COUNT(*)
|
|
FROM performance_schema.session_connect_attrs
|
|
WHERE ATTR_NAME IN ('_os', '_client_name', '_pid',
|
|
'_client_version', '_platform', 'program_name')
|
|
AND PROCESSLIST_ID = CONNECTION_ID();
|
|
|
|
# check the presense of the pre-defined attributes
|
|
--echo # must return 1
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_connect_attrs;
|
|
|
|
|
|
# basic performance_schema.session_account_connect_attrs tests
|
|
|
|
# check the presense of the pre-defined attributes
|
|
--echo # must return 0, 6
|
|
SELECT SUM(ISNULL(ATTR_VALUE)), COUNT(*)
|
|
FROM performance_schema.session_account_connect_attrs
|
|
WHERE ATTR_NAME IN ('_os', '_client_name', '_pid',
|
|
'_client_version', '_platform', 'program_name')
|
|
AND PROCESSLIST_ID = CONNECTION_ID();
|
|
|
|
# check the presense of the pre-defined attributes
|
|
--echo # must return 1
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_account_connect_attrs;
|
|
|
|
|
|
|
|
CREATE USER wl5924@localhost;
|
|
|
|
connect(non_privileged_user,localhost,wl5924,,test);
|
|
connection default;
|
|
|
|
--echo # must return 1
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_account_connect_attrs;
|
|
|
|
--echo # must return 2
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_connect_attrs;
|
|
|
|
connection non_privileged_user;
|
|
--error ER_TABLEACCESS_DENIED_ERROR
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_account_connect_attrs;
|
|
|
|
--error ER_TABLEACCESS_DENIED_ERROR
|
|
SELECT COUNT(DISTINCT PROCESSLIST_ID)
|
|
FROM performance_schema.session_connect_attrs;
|
|
|
|
connection default;
|
|
disconnect non_privileged_user;
|
|
|
|
grant select on performance_schema.* to wl5924@localhost;
|
|
change_user wl5924;
|
|
SELECT SUM(ISNULL(ATTR_VALUE)), COUNT(*)
|
|
FROM performance_schema.session_account_connect_attrs
|
|
WHERE ATTR_NAME IN ('_os', '_client_name', '_pid',
|
|
'_client_version', '_platform', 'program_name')
|
|
AND PROCESSLIST_ID = CONNECTION_ID();
|
|
change_user root,,test;
|
|
|
|
DROP USER wl5924@localhost;
|
|
|
|
# Wait till all disconnects are completed
|
|
--source include/wait_until_count_sessions.inc
|