Details
-
Bug
-
Status: Stalled (View Workflow)
-
Major
-
Resolution: Unresolved
-
11.5(EOL), 11.6(EOL)
-
None
Description
The MTR test perfschema.lowercase_fs_off fails on buildbot on versions 11.5 and 11.6:
perfschema.lowercase_fs_off w17 [ fail ]
|
Test ended at 2024-08-21 14:29:23
|
|
CURRENT_TEST: perfschema.lowercase_fs_off
|
--- /home/buildbot/amd64-ubuntu-2004-debug/build/mysql-test/suite/perfschema/r/lowercase_fs_off.result 2024-08-21 13:50:51.000000000 +0000
|
+++ /home/buildbot/amd64-ubuntu-2004-debug/build/mysql-test/suite/perfschema/r/lowercase_fs_off.reject 2024-08-21 14:29:22.909135156 +0000
|
@@ -16,6 +16,7 @@
|
FROM performance_schema.events_statements_summary_by_program
|
WHERE object_type='procedure' AND LOWER(object_schema)='db1';
|
object_type object_schema object_name count_star count_statements sum_rows_sent
|
+PROCEDURE db1 pkg1.p1 2 2 2
|
PROCEDURE DB1 sp 1 1 1
|
PROCEDURE db1 sp 1 1 1
|
DROP DATABASE db1;
|
|
Result length mismatch
|
|
- saving '/home/buildbot/amd64-ubuntu-2004-debug/build/mysql-test/var/17/log/perfschema.lowercase_fs_off/' to '/home/buildbot/amd64-ubuntu-2004-debug/build/mysql-test/var/log/perfschema.lowercase_fs_off/'
|
|
Retrying test perfschema.lowercase_fs_off, attempt(2/3)...
|
Attachments
Issue Links
- is part of
-
MDEV-33073 always green buildbot
-
- Stalled
-
- relates to
-
MDEV-35282 Performance schema does not clear package routines
-
- Open
-
The problem happens because when a package procedure (or a package function) is executed, performance schema remembers it as:
type='procedure'
db='db'
name='pkg1.p1'
When a DROP DATABASE happens, performance schema removes from its cached only a record like this:
type='package body'
db='db'
name='pkg1'
To make it work properly, when removing a package body from the perfschema cache, it should parse the package body and remove its all routines.
This looks quite complex.
Another option is to remember package routines in perfschema as their owner package body. So when db.pkg1.p1 is executed, perfschema remembers it as:
type='package body'
db='db'
name='pkg1'
But this will worsen the statistics.