diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:00:34 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:00:34 +0000 |
commit | 3f619478f796eddbba6e39502fe941b285dd97b1 (patch) | |
tree | e2c7b5777f728320e5b5542b6213fd3591ba51e2 /scripts/sys_schema/functions/ps_thread_id.sql | |
parent | Initial commit. (diff) | |
download | mariadb-upstream.tar.xz mariadb-upstream.zip |
Adding upstream version 1:10.11.6.upstream/1%10.11.6upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'scripts/sys_schema/functions/ps_thread_id.sql')
-rw-r--r-- | scripts/sys_schema/functions/ps_thread_id.sql | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/scripts/sys_schema/functions/ps_thread_id.sql b/scripts/sys_schema/functions/ps_thread_id.sql new file mode 100644 index 00000000..f344e6e1 --- /dev/null +++ b/scripts/sys_schema/functions/ps_thread_id.sql @@ -0,0 +1,66 @@ +-- Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. +-- +-- This program is free software; you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation; version 2 of the License. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program; if not, write to the Free Software +-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +DROP FUNCTION IF EXISTS ps_thread_id; + +DELIMITER $$ + +CREATE DEFINER='mariadb.sys'@'localhost' FUNCTION ps_thread_id ( + in_connection_id BIGINT UNSIGNED + ) RETURNS BIGINT UNSIGNED + COMMENT ' + Description + ----------- + + Return the Performance Schema THREAD_ID for the specified connection ID. + + Parameters + ----------- + + in_connection_id (BIGINT UNSIGNED): + The id of the connection to return the thread id for. If NULL, the current + connection thread id is returned. + + Example + ----------- + + mysql> SELECT sys.ps_thread_id(79); + +----------------------+ + | sys.ps_thread_id(79) | + +----------------------+ + | 98 | + +----------------------+ + 1 row in set (0.00 sec) + + mysql> SELECT sys.ps_thread_id(CONNECTION_ID()); + +-----------------------------------+ + | sys.ps_thread_id(CONNECTION_ID()) | + +-----------------------------------+ + | 98 | + +-----------------------------------+ + 1 row in set (0.00 sec) + ' + + SQL SECURITY INVOKER + NOT DETERMINISTIC + READS SQL DATA +BEGIN + RETURN (SELECT THREAD_ID + FROM `performance_schema`.`threads` + WHERE PROCESSLIST_ID = IFNULL(in_connection_id, CONNECTION_ID()) + ); +END$$ + +DELIMITER ; |