Bug #110045 Negative numbers on digests
Submitted: 13 Feb 2023 11:07 Modified: 13 Feb 2023 11:33
Reporter: Yakir Gibraltar Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Performance Schema Severity:S3 (Non-critical)
Version:8.0.32 OS:Linux
Assigned to: CPU Architecture:x86
Tags: digest, digests, perfromance_schema

[13 Feb 2023 11:07] Yakir Gibraltar
Description:
Hi, 
Negative numbers on digests in "where" not parsed out properly .
For example query:
"SELECT -1 WHERE 1 = -1" 
Generating:
"SELECT ? WHERE ? = - ?"
Instead:
"SELECT ? WHERE ? = ?"

Thank you. 

How to repeat:
db13:test> SELECT statement_digest_text("SELECT -1 WHERE 1 = 1");
+------------------------------------------------+
| statement_digest_text("SELECT -1 WHERE 1 = 1") |
+------------------------------------------------+
| SELECT ? WHERE ? = ?                           |
+------------------------------------------------+
1 row in set (0.00 sec)

db13:test> SELECT statement_digest_text("SELECT -1 WHERE 1 = -1");
+-------------------------------------------------+
| statement_digest_text("SELECT -1 WHERE 1 = -1") |
+-------------------------------------------------+
| SELECT ? WHERE ? = - ?                          |
+-------------------------------------------------+
1 row in set (0.00 sec)

Suggested fix:
SELECT statement_digest_text("SELECT -1 WHERE 1 = -1");
Should return : 
SELECT ? WHERE ? = ?
[13 Feb 2023 11:33] MySQL Verification Team
Hello Yakir,

Thank you for the report.

regards,
Umesh