
Hi Rong, Greetings from another Sergey, MariaDB Foundation. Just to set the roles, do I understand correctly that you (ByteDance?) are will be the primary driver of this effort and you need assistance from our side. Not vice versa. Correct? In either way, here is what I'd do if I were to implement it myself: 1. Pick the primary target branch. I'd use main if you're expecting many changes to MariaDB codebase, otherwise 10.11 should be alright. 2. I'd consider MySQL and MariaDB as different products from APIs point of view. E.g. Spider in MariaDB 10.3 was attempting to keep code compatible with all supported MySQL and MariaDB versions and it got overbloated with version check ifdefs such that code was almost unreadable. 3. Same for different MariaDB versions: I'd keep the code in separate branches for each supported version and merge from the lowest one to the highest. 4. Then we have 3 source code entities: - MariaDB source code itself - storage/videx - storage engine implementation - storage/videx/videx - videx server and other common stuff storage/videx can be either a submodule or go under MariaDB git history. Currently all storage engines use the latter approach. Directory contents: CMakeLists.txt ha_videx.cc videx/ mysql-test/ storage/videx/videx should probably be a submodule in your case. 5. I'd move all common code out of current ha_videx.cc. 6. Create MariaDB storage/videx implementation, make it compile. 7. Start populating storage/videx/mysql-test with various use cases, fix bugs. I'm unsure about MySQL and MariaDB regression testing systems compatibility, but some common tests can live in storage/videx/videx and imported during compilation. 8. Once things are in a decent state we should be able to make videx part of MariaDB. Speaking of communication channels: in this thread you have emails of most relevant MariaDB engineers that you may want to deal with. I can help you deal with general questions and coordinate this project on MariaDB side. Sergey Petrunia should definitely step in at point 6-7, once we start dealing with optimizer differences. You should be able to use @svoj in your github issues/pull requests to ping me. MDEV-36737 and this mailing list are also alright. Regards, Sergey On Mon, May 26, 2025 at 7:36 PM Rong Kang via discuss < discuss@lists.mariadb.org> wrote:
Hi Sergei and Adam,
I'm excited to share that VIDEX has been accepted into OSPP-2025 (Open Source Promotion Plan), a program where students apply to contribute to open source projects. We now have enthusiastic students ready to work on the MariaDB adaptation of VIDEX.
Given your effective research and code investigation so far, I'd like to inquire about the progress and discuss potential collaboration arrangements. Your expertise would be invaluable in scheduling and coordinating this work to avoid duplicate efforts.
The VIDEX students can contribute to either the optimizer/plugin side or the statistics server modifications - we're flexible and would appreciate your guidance on where their contributions would be most beneficial.
The OSPP program runs from June 25 to September 30. Within this timeframe, we hope to achieve meaningful milestones that could serve as a foundation for potentially including VIDEX in the official MariaDB plugin list in the future.
I look forward to hearing your thoughts on the best way to coordinate this effort.
For reference, here's the OSPP-2025 project page (available in English): https://summer-ospp.ac.cn/org/prodetail/25a990328?list=org&navpage=org
Best regards, Rong ByteBrain Team, ByteDance _______________________________________________ discuss mailing list -- discuss@lists.mariadb.org To unsubscribe send an email to discuss-leave@lists.mariadb.org