Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Not a Bug
    • Affects Version/s: 10.0.0, 5.5.28a, 5.3.11
    • Fix Version/s: 10.0.2
    • Component/s: None
    • Labels:
      None
    • Environment:
      WinXP

      Description

      An error message tells that MariaDB can't find the modules, but I see the DLL files in the specified dir:

      MariaDB [(none)]> SELECT @@global.plugin_dir;
      +---------------------------------------+
      | @@global.plugin_dir                   |
      +---------------------------------------+
      | C:\Programmi\MariaDB 10.0\lib\plugin\ |
      +---------------------------------------+
      1 row in set (0.11 sec)
      
      MariaDB [(none)]> INSTALL PLUGIN oqgraph SONAME 'ha_oqgraph.dll';
      ERROR 1126 (HY000): Can't open shared library 'C:\Programmi\MariaDB 10.0\lib\plu
      gin\ha_oqgraph.dll' (errno: 2 Impossibile trovare il modulo specificato.
      )
      MariaDB [(none)]> INSTALL PLUGIN blackhole SONAME 'ha_blackhole.dll';
      ERROR 1126 (HY000): Can't open shared library 'C:\Programmi\MariaDB 10.0\lib\plu
      gin\ha_blackhole.dll' (errno: 2 Impossibile trovare il modulo specificato.
      )
      

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            f_razzoli Federico Razzoli added a comment -

            Hi! I don't know that tool. Probably a short doc is a good idea.

            Show
            f_razzoli Federico Razzoli added a comment - Hi! I don't know that tool. Probably a short doc is a good idea.
            Hide
            f_razzoli Federico Razzoli added a comment -

            Hi,
            I hope this is what you want. I only captured events from "mysqldd" process, and I enabled advanced output.
            Please let me know if I missed something or you want more info.

            Show
            f_razzoli Federico Razzoli added a comment - Hi, I hope this is what you want. I only captured events from "mysqldd" process, and I enabled advanced output. Please let me know if I missed something or you want more info.
            Hide
            wlad Vladislav Vaintroub added a comment - - edited

            Hi Federico,
            unfortunately this trace only contains system-wide profiling events, so I can't fish useful info from it. I wrote up a small KB article

            https://kb.askmonty.org/en/how-to-use-procmon-to-trace-mysqldexe-filesystem-access/

            using "install plugin" as example.

            Could you please try it again, as in the article? Should take only couple of minutes.

            Show
            wlad Vladislav Vaintroub added a comment - - edited Hi Federico, unfortunately this trace only contains system-wide profiling events, so I can't fish useful info from it. I wrote up a small KB article https://kb.askmonty.org/en/how-to-use-procmon-to-trace-mysqldexe-filesystem-access/ using "install plugin" as example. Could you please try it again, as in the article? Should take only couple of minutes.
            Hide
            wlad Vladislav Vaintroub added a comment -

            Ok, I looked again into the procmon logs. It appears you run mysqld.exe renamed as mysqldd.exe . This won't work with plugins. And the reason is - this is how linking on Windows works, plugins use/import function from the server executable, and functions are imported using both module name and function name. And module name was mysqld.exe when server was built.

            Loading fails because symbols imported from mysqld.exe are unresolved.

            Resolution would be to use the original name mysqld.exe.

            Show
            wlad Vladislav Vaintroub added a comment - Ok, I looked again into the procmon logs. It appears you run mysqld.exe renamed as mysqldd.exe . This won't work with plugins. And the reason is - this is how linking on Windows works, plugins use/import function from the server executable, and functions are imported using both module name and function name. And module name was mysqld.exe when server was built. Loading fails because symbols imported from mysqld.exe are unresolved. Resolution would be to use the original name mysqld.exe.
            Hide
            wlad Vladislav Vaintroub added a comment - - edited

            I attached a picture demonstrating plugin dependency from mysqld.exe, and imported symbols, using DependencyWalker tool

            Show
            wlad Vladislav Vaintroub added a comment - - edited I attached a picture demonstrating plugin dependency from mysqld.exe, and imported symbols, using DependencyWalker tool

              People

              • Assignee:
                wlad Vladislav Vaintroub
                Reporter:
                f_razzoli Federico Razzoli
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: