← Back to team overview

maria-developers team mailing list archive

Re: Rev 2734: Maria WL#61 in file:///Users/bell/maria/bzr/work-maria-5.2-engine/

 

Hi!

22 янв. 2010, в 15:31, Michael Widenius написал(а):


Hi!

"sanja" == sanja  <sanja@xxxxxxxxxxxx> writes:

sanja> At file:///Users/bell/maria/bzr/work-maria-5.2-engine/
sanja> ------------------------------------------------------------
sanja> revno: 2734
sanja> revision-id: sanja@xxxxxxxxxxxx-20091204114937-cfkvax0g36d3nq3j
sanja> parent: psergey@xxxxxxxxxxxx-20091202142609-18bp41q8mejxl47t
sanja> committer: sanja@xxxxxxxxxxxx
sanja> branch nick: work-maria-5.2-engine
sanja> timestamp: Fri 2009-12-04 13:49:37 +0200
sanja> message:
sanja>   Maria WL#61

<cut>


+++ b/CMakeLists.txt	2009-12-04 11:49:37 +0000
@@ -251,6 +251,7 @@

        IF (ENGINE_BUILD_TYPE STREQUAL "STATIC")
SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_$ {PLUGIN_NAME}_plugin") + SET (mariaext_plugin_defs "$ {mariaext_plugin_defs},bltnmext_${PLUGIN_NAME}_plugin") SET (MYSQLD_STATIC_ENGINE_LIBS $ {MYSQLD_STATIC_ENGINE_LIBS} ${PLUGIN_NAME}) SET (STORAGE_ENGINE_DEFS "${STORAGE_ENGINE_DEFS} -DWITH_$ {ENGINE}_STORAGE_ENGINE")
          SET (WITH_${ENGINE}_STORAGE_ENGINE TRUE)
@@ -269,6 +270,7 @@
IF(NOT WITHOUT_PARTITION_STORAGE_ENGINE)
SET (STORAGE_ENGINE_DEFS "${STORAGE_ENGINE_DEFS} - DWITH_PARTITION_STORAGE_ENGINE") SET (mysql_plugin_defs "$ {mysql_plugin_defs},builtin_partition_plugin") + SET (mariaext_plugin_defs "$ {mariaext_plugin_defs},bltnmext_partition_plugin")
ENDIF(NOT WITHOUT_PARTITION_STORAGE_ENGINE)

Probably stupid questions, but why mariaext instead of just mariadb?

MARIAdbEXTension


What does 'bltnmext_partition_plugin' stand for ?
Can we use a more understandable name, like builtin_mariadb_partition_plugin ?

yes


<cut>

--- a/include/mysql/plugin.h	2009-09-07 20:50:10 +0000

<cut>

+/*
+  MariaDB extension for plugins declaration structure.
+*/
+
+struct st_mariaext_plugin
+{
+  const char *sversion;  /* plugin version string */

sversion -> version ?

actually it was string version (we have already numeric one).

+  int maturity;          /* HA_PLUGIN_MATURITY_XXX */
+};
+
/ *************************************************************************
  API for Full-text parser plugin. (MYSQL_FTPARSER_PLUGIN)
*/

=== modified file 'sql/sql_plugin.cc'
--- a/sql/sql_plugin.cc	2009-11-12 04:31:28 +0000
+++ b/sql/sql_plugin.cc	2009-12-04 11:49:37 +0000
[skip]
+    /* extensions should be the same numbers as static plugins) */
+    DBUG_ASSERT(*bltnmexts);
+    for (plugin= *builtins, ext= *bltnmexts;
+         plugin->info;
+         plugin++, ext++)
    {
+
+      /* in case if plugin describe less extensions then plugins */
+      mariaext= ext;
+      if (!ext->sversion)
+      {
+         mariaext= empty_mariaext;
+         ext--;
+      }
+

I am a bit unsure about the above code;  If we allow one to describe
less extensions, then it's not sure that when one adds a new plugin
with extension information, one remembers to also add all missing
extensions.

I think that for staticly compiled plugins we should require that
they have also extension information. What do you think about this?

It is for dynamically linked plugins. Of course statically linked will have everything but they will be included in built in plugins array (it is other code).

[skip]


Follow ups

References