Bug #109920 SEs cannot add to clone data size estimates
Submitted: 3 Feb 2023 13:38 Modified: 22 Oct 8:25
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Clone Plugin Severity:S4 (Feature request)
Version:8.0.32 OS:Any
Assigned to: CPU Architecture:Any
Tags: Clone, Contribution

[3 Feb 2023 13:38] Laurynas Biveinis
Description:
In the current clone implementation, there are no means for storage engines other than InnoDB to provide their data size estimates.

How to repeat:
Add clone support to another storage engine.
Observe that there are no callbacks for that storage engine to adjust estimate or any other information in performance_schema.clone_progress table

Suggested fix:
A proper fix would be to pull the whole "clone stage" concept from InnoDB to the clone plugin, where it actually belongs, with callbacks to register & advance the stage, taking also the estimate parameters.

A hacky fix is to allow to add to the current stage estimate from other SEs, will submit an example.
[3 Feb 2023 13:39] Laurynas Biveinis
Bug 109920 example fix

(*) I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: bug109920-poc.patch (application/octet-stream, text), 5.18 KiB.

[6 Feb 2023 4:55] MySQL Verification Team
Hello Laurynas,

Thank you for the feature request and contribution!

regards,
Umesh
[27 May 14:13] Laurynas Biveinis
Bug 109920 fix for 8.4.0; fixed -Wdocumentation warnings

(*) I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: bug109920-8.4.0.patch (application/octet-stream, text), 5.42 KiB.

[27 May 14:13] Laurynas Biveinis
The original patch had -Wdocumentation issues, fixed them.
[9 Jul 12:59] Laurynas Biveinis
My contributed patch applies cleanly on 9.0.0 and passes the tests.
[22 Oct 8:25] Laurynas Biveinis
The contributed patch applies on 9.1.0 cleanly and passes the tests.