From f91b4833193e1d883b3fcc0d1972c04b7057315f Mon Sep 17 00:00:00 2001
From: halfspawn <j.brauge@qualiac.com>
Date: Thu, 30 Mar 2017 20:44:35 +0200
Subject: [PATCH] Add info provide by jdbc client to
 information_schema.processlist

---
 mysql-test/r/create.result                         |  10 +-
 mysql-test/r/information_schema_processlist.result |  49 +++++++
 mysql-test/suite/funcs_1/r/is_columns_is.result    |   6 +
 .../funcs_1/r/processlist_priv_no_prot.result      | 146 +++++++++++----------
 .../suite/funcs_1/r/processlist_val_no_prot.result |  49 +++----
 mysql-test/t/information_schema_processlist.test   |  42 ++++++
 sql/sql_show.cc                                    |  72 +++++++++-
 sql/sql_show.h                                     |   2 +
 8 files changed, 280 insertions(+), 96 deletions(-)
 create mode 100644 mysql-test/r/information_schema_processlist.result
 create mode 100644 mysql-test/t/information_schema_processlist.test

diff --git a/mysql-test/r/create.result b/mysql-test/r/create.result
index 81b65c4..763abed 100644
--- a/mysql-test/r/create.result
+++ b/mysql-test/r/create.result
@@ -1154,7 +1154,10 @@ t1	CREATE TABLE `t1` (
   `EXAMINED_ROWS` int(7) NOT NULL DEFAULT 0,
   `QUERY_ID` bigint(4) NOT NULL DEFAULT 0,
   `INFO_BINARY` blob DEFAULT NULL,
-  `TID` bigint(4) NOT NULL DEFAULT 0
+  `TID` bigint(4) NOT NULL DEFAULT 0,
+  `APPLICATION_NAME` varchar(64) DEFAULT NULL,
+  `CLIENT_USER` varchar(128) DEFAULT NULL,
+  `CLIENT_HOSTNAME` varchar(64) DEFAULT NULL
 )  DEFAULT CHARSET=utf8
 drop table t1;
 create temporary table t1 like information_schema.processlist;
@@ -1177,7 +1180,10 @@ t1	CREATE TEMPORARY TABLE `t1` (
   `EXAMINED_ROWS` int(7) NOT NULL DEFAULT 0,
   `QUERY_ID` bigint(4) NOT NULL DEFAULT 0,
   `INFO_BINARY` blob DEFAULT NULL,
-  `TID` bigint(4) NOT NULL DEFAULT 0
+  `TID` bigint(4) NOT NULL DEFAULT 0,
+  `APPLICATION_NAME` varchar(64) DEFAULT NULL,
+  `CLIENT_USER` varchar(128) DEFAULT NULL,
+  `CLIENT_HOSTNAME` varchar(64) DEFAULT NULL
 )  DEFAULT CHARSET=utf8
 drop table t1;
 create table t1 like information_schema.character_sets;
diff --git a/mysql-test/r/information_schema_processlist.result b/mysql-test/r/information_schema_processlist.result
new file mode 100644
index 0000000..acbc37a
--- /dev/null
+++ b/mysql-test/r/information_schema_processlist.result
@@ -0,0 +1,49 @@
+#
+# MDEV-????? Add fields Application_Name, Client_User et Client_Hostname
+#            to information_schema.processlist
+#            To set these columns, two ways :
+#                via JDBC :
+#                     cnx.setClientInfo("ApplicationName",value)
+#                     cnx.setClientInfo("ClientUser",value)
+#                     cnx.setClientInfo("ClientHostname",value)
+#                via set session variables :
+#                     set @ApplicationName=value (64 char max)
+#                     set @ClientUser=value      (128 char max)
+#                     set @ClientHostname=value  (64 char max)
+# Variables not set.
+select application_name, client_user, client_hostname from information_schema.processlist where id=con_id;
+application_name	client_user	client_hostname
+NULL	NULL	NULL
+select count(*) from information_schema.processlist where application_name is null;
+count(*)
+1
+# All variables not set.
+set @ApplicationName='TestApp';
+set @ClientUser='Developper';
+set @ClientHostname='my PC';
+select application_name, client_user, client_hostname from information_schema.processlist where id=con_id;
+application_name	client_user	client_hostname
+TestApp	Developper	my PC
+select count(*) from information_schema.processlist where application_name is null;
+count(*)
+0
+# Reset variables to null
+set @ApplicationName=null;
+set @ClientUser=null;
+set @ClientHostname=null;
+select application_name, client_user, client_hostname from information_schema.processlist where id=con_id;
+application_name	client_user	client_hostname
+NULL	NULL	NULL
+select count(*) from information_schema.processlist where application_name is null;
+count(*)
+1
+# Set value too long
+set @ApplicationName='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+set @ClientUser='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+set @ClientHostname='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+select application_name, client_user, client_hostname from information_schema.processlist where id=con_id;
+application_name	client_user	client_hostname
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa	aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa	aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+select length(application_name), length(client_user), length(client_hostname) from information_schema.processlist where application_name is not null;
+length(application_name)	length(client_user)	length(client_hostname)
+64	128	64
diff --git a/mysql-test/suite/funcs_1/r/is_columns_is.result b/mysql-test/suite/funcs_1/r/is_columns_is.result
index 9cf3478..03cc32e 100644
--- a/mysql-test/suite/funcs_1/r/is_columns_is.result
+++ b/mysql-test/suite/funcs_1/r/is_columns_is.result
@@ -254,6 +254,9 @@ def	information_schema	PLUGINS	PLUGIN_STATUS	3		NO	varchar	16	48	NULL	NULL	NULL
 def	information_schema	PLUGINS	PLUGIN_TYPE	4		NO	varchar	80	240	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(80)			select		NEVER	NULL
 def	information_schema	PLUGINS	PLUGIN_TYPE_VERSION	5		NO	varchar	20	60	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(20)			select		NEVER	NULL
 def	information_schema	PLUGINS	PLUGIN_VERSION	2		NO	varchar	20	60	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(20)			select		NEVER	NULL
+def	information_schema	PROCESSLIST	APPLICATION_NAME	18	NULL	YES	varchar	64	192	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(64)			select		NEVER	NULL
+def	information_schema	PROCESSLIST	CLIENT_HOSTNAME	20	NULL	YES	varchar	64	192	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(64)			select		NEVER	NULL
+def	information_schema	PROCESSLIST	CLIENT_USER	19	NULL	YES	varchar	128	384	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(128)			select		NEVER	NULL
 def	information_schema	PROCESSLIST	COMMAND	5		NO	varchar	16	48	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(16)			select		NEVER	NULL
 def	information_schema	PROCESSLIST	DB	4	NULL	YES	varchar	64	192	NULL	NULL	NULL	utf8	utf8_general_ci	varchar(64)			select		NEVER	NULL
 def	information_schema	PROCESSLIST	EXAMINED_ROWS	14	0	NO	int	NULL	NULL	10	0	NULL	NULL	NULL	int(7)			select		NEVER	NULL
@@ -801,6 +804,9 @@ NULL	information_schema	PROCESSLIST	EXAMINED_ROWS	int	NULL	NULL	NULL	NULL	int(7)
 NULL	information_schema	PROCESSLIST	QUERY_ID	bigint	NULL	NULL	NULL	NULL	bigint(4)
 1.0000	information_schema	PROCESSLIST	INFO_BINARY	blob	65535	65535	NULL	NULL	blob
 NULL	information_schema	PROCESSLIST	TID	bigint	NULL	NULL	NULL	NULL	bigint(4)
+3.0000	information_schema	PROCESSLIST	APPLICATION_NAME	varchar	64	192	utf8	utf8_general_ci	varchar(64)
+3.0000	information_schema	PROCESSLIST	CLIENT_USER	varchar	128	384	utf8	utf8_general_ci	varchar(128)
+3.0000	information_schema	PROCESSLIST	CLIENT_HOSTNAME	varchar	64	192	utf8	utf8_general_ci	varchar(64)
 3.0000	information_schema	REFERENTIAL_CONSTRAINTS	CONSTRAINT_CATALOG	varchar	512	1536	utf8	utf8_general_ci	varchar(512)
 3.0000	information_schema	REFERENTIAL_CONSTRAINTS	CONSTRAINT_SCHEMA	varchar	64	192	utf8	utf8_general_ci	varchar(64)
 3.0000	information_schema	REFERENTIAL_CONSTRAINTS	CONSTRAINT_NAME	varchar	64	192	utf8	utf8_general_ci	varchar(64)
diff --git a/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result b/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result
index 6680e04..81aac7d 100644
--- a/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result
+++ b/mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result
@@ -40,16 +40,19 @@ PROCESSLIST	CREATE TEMPORARY TABLE `PROCESSLIST` (
   `EXAMINED_ROWS` int(7) NOT NULL DEFAULT 0,
   `QUERY_ID` bigint(4) NOT NULL DEFAULT 0,
   `INFO_BINARY` blob DEFAULT NULL,
-  `TID` bigint(4) NOT NULL DEFAULT 0
+  `TID` bigint(4) NOT NULL DEFAULT 0,
+  `APPLICATION_NAME` varchar(64) DEFAULT NULL,
+  `CLIENT_USER` varchar(128) DEFAULT NULL,
+  `CLIENT_HOSTNAME` varchar(64) DEFAULT NULL
 )  DEFAULT CHARSET=utf8
 SHOW processlist;
 Id	User	Host	db	Command	Time	State	Info	Progress
 ID	root	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 SELECT * FROM processlist  ORDER BY id;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	root	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM processlist  ORDER BY id	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	root	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM processlist  ORDER BY id	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id;
 ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY
 ID	root	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id
@@ -119,14 +122,17 @@ PROCESSLIST	CREATE TEMPORARY TABLE `PROCESSLIST` (
   `EXAMINED_ROWS` int(7) NOT NULL DEFAULT 0,
   `QUERY_ID` bigint(4) NOT NULL DEFAULT 0,
   `INFO_BINARY` blob DEFAULT NULL,
-  `TID` bigint(4) NOT NULL DEFAULT 0
+  `TID` bigint(4) NOT NULL DEFAULT 0,
+  `APPLICATION_NAME` varchar(64) DEFAULT NULL,
+  `CLIENT_USER` varchar(128) DEFAULT NULL,
+  `CLIENT_HOSTNAME` varchar(64) DEFAULT NULL
 )  DEFAULT CHARSET=utf8
 SHOW processlist;
 Id	User	Host	db	Command	Time	State	Info	Progress
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM processlist  ORDER BY id;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM processlist  ORDER BY id	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM processlist  ORDER BY id	TID	NULL	NULL	NULL
 SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id;
 ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO, TIME_MS, STAGE, MAX_STAGE, PROGRESS, MEMORY_USED, EXAMINED_ROWS, QUERY_ID, INFO_BINARY FROM processlist  ORDER BY id
@@ -190,8 +196,8 @@ SHOW processlist;
 Id	User	Host	db	Command	Time	State	Info	Progress
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
 ####################################################################################
 4.2 New connection con101 (ddicttestuser1 with PROCESS privilege)
 SHOW/SELECT shows all processes/threads.
@@ -206,10 +212,10 @@ ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 5 Grant PROCESS privilege to anonymous user.
 connection default (user=root)
@@ -233,11 +239,11 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID		HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID		HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID		HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 6 Revoke PROCESS privilege from ddicttestuser1
 connection default (user=root)
@@ -259,10 +265,10 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 7 Revoke PROCESS privilege from anonymous user
 connection default (user=root)
@@ -279,9 +285,9 @@ SHOW GRANTS FOR ''@'localhost';
 Grants for @localhost
 GRANT USAGE ON *.* TO ''@'localhost'
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID		HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID		HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 8 Grant SUPER (does not imply PROCESS) privilege to ddicttestuser1
 connection default (user=root)
@@ -303,11 +309,11 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 9 Revoke SUPER privilege from user ddicttestuser1
 connection default (user=root)
@@ -331,12 +337,12 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 10 Grant SUPER privilege with grant option to user ddicttestuser1.
 connection default (user=root)
@@ -390,18 +396,18 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID		HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	root	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 11 User ddicttestuser1 revokes PROCESS privilege from user ddicttestuser2
 connection ddicttestuser1;
@@ -421,9 +427,9 @@ Id	User	Host	db	Command	Time	State	Info	Progress
 ID	ddicttestuser2	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser2	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser2	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser2	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 11.2 Revoke SUPER,PROCESS,GRANT OPTION privilege from user ddicttestuser1
 connection default (user=root)
@@ -452,15 +458,15 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 12 Revoke the SELECT privilege from user ddicttestuser1
 connection default (user=root)
@@ -490,16 +496,16 @@ ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS
 ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	init	SHOW processlist	TIME_MS
 SELECT * FROM information_schema.processlist;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
-ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+ID	ddicttestuser1	HOST_NAME	information_schema	Query	TIME	Filling schema table	SELECT * FROM information_schema.processlist	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	SELECT * FROM information_schema.processlist	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
+ID	ddicttestuser1	HOST_NAME	information_schema	Sleep	TIME		NULL	TIME_MS	0	0	0.000	MEMORY	ROWS	QUERY_ID	NULL	TID	NULL	NULL	NULL
 ####################################################################################
 12.2 Revoke only the SELECT privilege on the information_schema from ddicttestuser1.
 connection default (user=root)
diff --git a/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result b/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
index f935f77..0e01916 100644
--- a/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
+++ b/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
@@ -28,14 +28,17 @@ PROCESSLIST	CREATE TEMPORARY TABLE `PROCESSLIST` (
   `EXAMINED_ROWS` int(7) NOT NULL DEFAULT 0,
   `QUERY_ID` bigint(4) NOT NULL DEFAULT 0,
   `INFO_BINARY` blob DEFAULT NULL,
-  `TID` bigint(4) NOT NULL DEFAULT 0
+  `TID` bigint(4) NOT NULL DEFAULT 0,
+  `APPLICATION_NAME` varchar(64) DEFAULT NULL,
+  `CLIENT_USER` varchar(128) DEFAULT NULL,
+  `CLIENT_HOSTNAME` varchar(64) DEFAULT NULL
 )  DEFAULT CHARSET=utf8
 # Ensure that the information about the own connection is correct.
 #--------------------------------------------------------------------------
 
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	root	<HOST_NAME>	test	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	root	<HOST_NAME>	test	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	root	<HOST_NAME>	test	Query	<TIME>	init	SHOW FULL PROCESSLIST	<TIME_MS>
@@ -79,9 +82,9 @@ connection default;
 # Poll till the connection con1 is in state COMMAND = 'Sleep'.
 
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>	<STATE>	NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>
-<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	<STATE>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>	<STATE>	NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>	NULL	NULL	NULL
+<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	<STATE>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	init	SHOW FULL PROCESSLIST	0.000
@@ -112,8 +115,8 @@ Expect 1
 
 connection con1;
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	init	SHOW FULL PROCESSLIST	0.000
@@ -126,9 +129,9 @@ connection default;
 
 connection con2;
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
-<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
+<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	0.000
@@ -149,10 +152,10 @@ connection default;
 # Poll till connection con2 is in state 'User sleep'.
 
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	User sleep	SELECT sleep(10), 17	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT sleep(10), 17	<TID>
-<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>
-<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	User sleep	SELECT sleep(10), 17	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT sleep(10), 17	<TID>	NULL	NULL	NULL
+<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>	NULL	NULL	NULL
+<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	init	SHOW FULL PROCESSLIST	0.000
@@ -192,10 +195,10 @@ connection default;
 # Poll till INFO is no more NULL and State = 'Waiting for table metadata lock'.
 
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Waiting for table metadata lock	SELECT COUNT(*) FROM test.t1	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT COUNT(*) FROM test.t1	<TID>
-<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>
-<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	Query	<TIME>	Waiting for table metadata lock	SELECT COUNT(*) FROM test.t1	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT COUNT(*) FROM test.t1	<TID>	NULL	NULL	NULL
+<ID>	test_user	<HOST_NAME>	information_schema	Sleep	<TIME>		NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>	NULL	NULL	NULL
+<ID>	root	<HOST_NAME>	information_schema	Query	<TIME>	Filling schema table	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 UNLOCK TABLES;
 connection con2;
 # Pull("reap") the result set from the statement executed with "send".
@@ -222,10 +225,10 @@ connection default;
 # SHOW PROCESSLIST                               statement truncated after 100 char
 
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
-ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID
-<ID>	test_user	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1	<TID>
-<ID>	test_user	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>
-<ID>	root	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>
+ID	USER	HOST	DB	COMMAND	TIME	STATE	INFO	TIME_MS	STAGE	MAX_STAGE	PROGRESS	MEMORY_USED	EXAMINED_ROWS	QUERY_ID	INFO_BINARY	TID	APPLICATION_NAME	CLIENT_USER	CLIENT_HOSTNAME
+<ID>	test_user	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1	<TID>	NULL	NULL	NULL
+<ID>	test_user	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	NULL	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	NULL	<TID>	NULL	NULL	NULL
+<ID>	root	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TIME_MS>	0	0	0.000	<MEMORY>	<ROWS>	<QUERY_ID>	SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST	<TID>	NULL	NULL	NULL
 SHOW FULL PROCESSLIST;
 Id	User	Host	db	Command	Time	State	Info	Progress
 <ID>	root	<HOST_NAME>	information_schema	<COMMAND>	<TIME>	<STATE>	SHOW FULL PROCESSLIST	0.000
diff --git a/mysql-test/t/information_schema_processlist.test b/mysql-test/t/information_schema_processlist.test
new file mode 100644
index 0000000..d9341e6
--- /dev/null
+++ b/mysql-test/t/information_schema_processlist.test
@@ -0,0 +1,42 @@
+--echo #
+--echo # MDEV-????? Add fields Application_Name, Client_User et Client_Hostname
+--echo #            to information_schema.processlist
+--echo #            To set these columns, two ways :
+--echo #                via JDBC :
+--echo #                     cnx.setClientInfo("ApplicationName",value)
+--echo #                     cnx.setClientInfo("ClientUser",value)
+--echo #                     cnx.setClientInfo("ClientHostname",value)
+--echo #                via set session variables :
+--echo #                     set @ApplicationName=value (64 char max)
+--echo #                     set @ClientUser=value      (128 char max)
+--echo #                     set @ClientHostname=value  (64 char max)
+
+--let $con_id = `SELECT CONNECTION_ID()`
+--echo # Variables not set.
+--replace_result $con_id con_id
+eval select application_name, client_user, client_hostname from information_schema.processlist where id=$con_id;
+select count(*) from information_schema.processlist where application_name is null;
+
+--echo # All variables not set.
+set @ApplicationName='TestApp';
+set @ClientUser='Developper';
+set @ClientHostname='my PC';
+--replace_result $con_id con_id
+eval select application_name, client_user, client_hostname from information_schema.processlist where id=$con_id;
+select count(*) from information_schema.processlist where application_name is null;
+
+--echo # Reset variables to null
+set @ApplicationName=null;
+set @ClientUser=null;
+set @ClientHostname=null;
+--replace_result $con_id con_id
+eval select application_name, client_user, client_hostname from information_schema.processlist where id=$con_id;
+select count(*) from information_schema.processlist where application_name is null;
+
+--echo # Set value too long
+set @ApplicationName='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+set @ClientUser='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+set @ClientHostname='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
+--replace_result $con_id con_id
+eval select application_name, client_user, client_hostname from information_schema.processlist where id=$con_id;
+eval select length(application_name), length(client_user), length(client_hostname) from information_schema.processlist where application_name is not null;
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index dbd14ea..5433729 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -2440,7 +2440,8 @@ class thread_info :public ilink {
   uint32 os_thread_id;
   ulonglong start_time;
   uint   command;
-  const char *user,*host,*db,*proc_info,*state_info;
+  const char *user,*host,*db,*proc_info,*state_info, *application_name,
+             *client_user, *client_hostname;
   CSET_STRING query_string;
   double progress;
 };
@@ -2635,6 +2636,32 @@ void mysqld_list_processes(THD *thd,const char *user, bool verbose)
   DBUG_VOID_RETURN;
 }
 
+/**
+  @brief Returns the value of a session variable.
+
+  @param thd           [in]     The handle of the current THD.
+  @param session       [in]     The handle of the session THD.
+  @param variable_name [in]     Name of the variable to search.
+
+  @return                     Pointer to the value buffer or NULL
+*/
+char* get_one_variable_as_char(THD *thd, THD *session, const char *variable_name)
+{
+  user_var_entry *var;
+  LEX_STRING varname;
+  thd->make_lex_string(&varname,variable_name, strlen(variable_name));
+
+  if ((var= get_variable(&session->user_vars, varname, FALSE)))
+  {
+    char tmp[MAX_FIELD_WIDTH];
+    String *tmp_str, str_buff(tmp, sizeof(tmp), system_charset_info);
+    bool null_value;
+    if ((tmp_str= var->val_str(&null_value, &str_buff, 0)))
+      return (char*) thd->memdup(tmp_str->c_ptr_quick(), tmp_str->length() + 1);
+  }
+  return NULL;
+}
+
 
 /*
   Produce EXPLAIN data.
@@ -3029,6 +3056,43 @@ int fill_schema_processlist(THD* thd, TABLE_LIST* tables, COND* cond)
 
       table->field[16]->store(tmp->os_thread_id);
 
+      if (tmp->user_vars.records)
+      {
+        char *value;
+        // APPLICATION_NAME
+        if ((value= get_one_variable_as_char(thd, tmp, "ApplicationName")))
+        {
+          table->field[17]->store(value, strlen(value), cs);
+          table->field[17]->set_notnull();
+        }
+        else
+         table->field[17]->set_null();
+
+        // CLIENT_USER
+        if ((value= get_one_variable_as_char(thd, tmp, "ClientUser")))
+        {
+          table->field[18]->store(value, strlen(value), cs);
+          table->field[18]->set_notnull();
+        }
+        else
+         table->field[18]->set_null();
+
+        // CLIENT_HOSTNAME
+        if ((value= get_one_variable_as_char(thd, tmp, "ClientHostname")))
+        {
+            table->field[19]->store(value, strlen(value), cs);
+            table->field[19]->set_notnull();
+        }
+        else
+         table->field[19]->set_null();
+      }
+      else
+      {
+         table->field[17]->set_null();
+         table->field[18]->set_null();
+         table->field[19]->set_null();
+      }
+
       if (schema_table_store_record(thd, table))
       {
         mysql_mutex_unlock(&LOCK_thread_count);
@@ -8886,6 +8950,12 @@ ST_FIELD_INFO processlist_fields_info[]=
   {"INFO_BINARY", PROCESS_LIST_INFO_WIDTH, MYSQL_TYPE_BLOB, 0, 1,
    "Info_binary", SKIP_OPEN_TABLE},
   {"TID", 4, MYSQL_TYPE_LONGLONG, 0, 0, "Tid", SKIP_OPEN_TABLE},
+  {"APPLICATION_NAME", NAME_CHAR_LEN,  MYSQL_TYPE_STRING, 0, 1,
+   "ApplicationName",SKIP_OPEN_TABLE},
+  {"CLIENT_USER", USERNAME_CHAR_LENGTH,  MYSQL_TYPE_STRING, 0, 1,
+   "ClientUser",SKIP_OPEN_TABLE},
+  {"CLIENT_HOSTNAME", LIST_PROCESS_HOST_LEN,  MYSQL_TYPE_STRING, 0, 1,
+   "ClientHostname",SKIP_OPEN_TABLE},
   {0, 0, MYSQL_TYPE_STRING, 0, 0, 0, SKIP_OPEN_TABLE}
 };
 
diff --git a/sql/sql_show.h b/sql/sql_show.h
index e93b855..c8648f3 100644
--- a/sql/sql_show.h
+++ b/sql/sql_show.h
@@ -137,6 +137,8 @@ const char* get_one_variable(THD *thd, const SHOW_VAR *variable,
                              const CHARSET_INFO **charset, char *buff,
                              size_t *length);
 
+char* get_one_variable_as_char(THD *thd, THD *session, char *variable_name);
+
 /* These functions were under INNODB_COMPATIBILITY_HOOKS */
 int get_quote_char_for_identifier(THD *thd, const char *name, uint length);
 THD *find_thread_by_id(longlong id, bool query_id= false);
-- 
2.6.3.windows.1

