summaryrefslogtreecommitdiff
path: root/mysys/my_static.c
diff options
context:
space:
mode:
authorKonstantin Osipov <kostja@sun.com>2009-12-15 21:45:22 +0300
committerKonstantin Osipov <kostja@sun.com>2009-12-15 21:45:22 +0300
commitc9cd0f0b75b6dcaacef5db6eabd31e262ecd7be4 (patch)
treec5bdf39edfe6126050810bb9269e5bb4fc8cf16d /mysys/my_static.c
parent6331ef3efd56d995fd7a82b7325a2615750766ad (diff)
parent6fd3866c6c104f8bc991d71583e627ae6fabe0ab (diff)
downloadmariadb-git-c9cd0f0b75b6dcaacef5db6eabd31e262ecd7be4.tar.gz
Merge next-mr -> next-4284.
Diffstat (limited to 'mysys/my_static.c')
-rw-r--r--mysys/my_static.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/mysys/my_static.c b/mysys/my_static.c
index 62caeee89c4..a86fe6c7ab7 100644
--- a/mysys/my_static.c
+++ b/mysys/my_static.c
@@ -124,3 +124,31 @@ my_bool NEAR my_disable_async_io=0;
my_bool NEAR my_disable_flush_key_blocks=0;
my_bool NEAR my_disable_symlinks=0;
my_bool NEAR mysys_uses_curses=0;
+
+/*
+ Note that PSI_hook and PSI_server are unconditionally
+ (no ifdef HAVE_PSI_INTERFACE) defined.
+ This is to ensure binary compatibility between the server and plugins,
+ in the case when:
+ - the server is not compiled with HAVE_PSI_INTERFACE
+ - a plugin is compiled with HAVE_PSI_INTERFACE
+ See the doxygen documentation for the performance schema.
+*/
+
+/**
+ Hook for the instrumentation interface.
+ Code implementing the instrumentation interface should register here.
+*/
+struct PSI_bootstrap *PSI_hook= NULL;
+
+/**
+ Instance of the instrumentation interface for the MySQL server.
+ @todo This is currently a global variable, which is handy when
+ compiling instrumented code that is bundled with the server.
+ When dynamic plugin are truly supported, this variable will need
+ to be replaced by a macro, so that each XYZ plugin can have it's own
+ xyz_psi_server variable, obtained from PSI_bootstrap::get_interface()
+ with the version used at compile time for plugin XYZ.
+*/
+PSI *PSI_server= NULL;
+