Bug #71801 Manual should explain what connection attributes are set by mysql clients
Submitted: 22 Feb 2014 16:39 Modified: 14 Oct 2015 21:46
Reporter: Valeriy Kravchuk Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.6 OS:Any
Assigned to: Paul DuBois CPU Architecture:Any
Tags: missing manual, performance_schema, session_connect_attrs

[22 Feb 2014 16:39] Valeriy Kravchuk
Description:
Manual page for P_S.session_connect_attrs table (http://dev.mysql.com/doc/refman/5.6/en/performance-schema-connection-attribute-tables.html) does NOT give any example or explanation of the attributes set by standard clients like mysql.

How to repeat:
Run the following from mysql command line client:

SELECT * FROM performance_schema.session_connect_attrs;

You'll get something like this on 5.6.16 built from sources on Linux:

mysql> SELECT * FROM performance_schema.session_connect_attrs;
+----------------+-----------------+------------+------------------+
| PROCESSLIST_ID | ATTR_NAME       | ATTR_VALUE | ORDINAL_POSITION |
+----------------+-----------------+------------+------------------+
|              1 | _os             | Linux      |                0 |
|              1 | _client_name    | libmysql   |                1 |
|              1 | _pid            | 9480       |                2 |
|              1 | _client_version | 5.6.16     |                3 |
|              1 | _platform       | x86_64     |                4 |
|              1 | program_name    | mysql      |                5 |
+----------------+-----------------+------------+------------------+
6 rows in set (0,00 sec)

or this on 5.6.16 on Windows (Oracle binaries):

mysql> SELECT * FROM performance_schema.session_connect_attrs;
+----------------+-----------------+------------+------------------+
| PROCESSLIST_ID | ATTR_NAME       | ATTR_VALUE | ORDINAL_POSITION |
+----------------+-----------------+------------+------------------+
|             12 | _os             | Win64      |                0 |
|             12 | _client_name    | libmysql   |                1 |
|             12 | _pid            | 7008       |                2 |
|             12 | _thread         | 4288       |                3 |
|             12 | _platform       | x86_64     |                4 |
|             12 | program_name    | mysql      |                5 |
|             12 | _client_version | 5.6.16     |                6 |
+----------------+-----------------+------------+------------------+
7 rows in set (0.00 sec)

Now, try to find in the manual any description of these attributes or explanation of the difference on Linux vs Windows (additional _thread attribute).

Suggested fix:
I think manual should explain these "standard" attributes and their meanings/possible values at least for major platforms.

See Bug #68785 also. It seems at some moment _command_line attribute disappeared. It would be nice to know when and why.
[24 Feb 2014 11:07] MySQL Verification Team
Hello Valeriy,

Thank you for the bug report.
Verified as described.

Thanks,
Umesh
[14 Oct 2015 21:46] Paul DuBois
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly.

Connection attributes now listed here:
http://dev.mysql.com/doc/refman/5.7/en/performance-schema-connection-attribute-tables.html
and cross referenced to there from the connection-attribute table sections and mysql_options{,4}()
sections.