diff --git a/Documentation/About/Limitations.md b/Documentation/About/Limitations.md index 01d63008c..4183bcb61 100644 --- a/Documentation/About/Limitations.md +++ b/Documentation/About/Limitations.md @@ -8,11 +8,7 @@ This section describes the limitations that are common to all configuration of p ## Limitations with MySQL Protocol support -* Compression - -* SSL - -Both capabilities are not included in MySQL server handshake +Compression is not included in MySQL server handshake ## Limitations with MySQL Master/Slave Replication monitoring @@ -22,7 +18,9 @@ Master selection is based only on MIN(wsrep_local_index), no other server parame ## Limitations in the connection router -If Master changes (ie. new Master promotion) during current connection the router cannot check the change +* If Master changes (ie. new Master promotion) during current connection the router cannot check the change + +* LONGBLOB is not supported ## Limitations in the Read/Write Splitter @@ -93,4 +91,3 @@ Most imaginable reasons are related to replication lag but it could be possible ## Authentication Related Limitations MySQL old passwords are not supported - diff --git a/server/core/gateway.c b/server/core/gateway.c index 0ab08c818..4b10c9798 100644 --- a/server/core/gateway.c +++ b/server/core/gateway.c @@ -1649,7 +1649,7 @@ int main(int argc, char **argv) if(errno != EEXIST){ fprintf(stderr, - "Error: Cannot create data directory: %s\n",datadir); + "Error: Cannot create data directory '%s': %d %s\n",datadir,errno,strerror(errno)); goto return_main; } } @@ -1660,7 +1660,7 @@ int main(int argc, char **argv) if(errno != EEXIST){ fprintf(stderr, - "Error: Cannot create data directory: %s\n",datadir); + "Error: Cannot create data directory '%s': %d %s\n",datadir,errno,strerror(errno)); goto return_main; } } diff --git a/server/modules/monitor/mmmon.c b/server/modules/monitor/mmmon.c index 40c2c11fb..248fb92fd 100644 --- a/server/modules/monitor/mmmon.c +++ b/server/modules/monitor/mmmon.c @@ -127,6 +127,7 @@ startMonitor(void *arg,void* opt) handle->id = MONITOR_DEFAULT_ID; handle->master = NULL; handle->script = NULL; + handle->detectStaleMaster = false; memset(handle->events,false,sizeof(handle->events)); spinlock_init(&handle->lock); } @@ -198,7 +199,8 @@ startMonitor(void *arg,void* opt) static void stopMonitor(void *arg) { -MM_MONITOR *handle = (MM_MONITOR *)arg; + MONITOR* mon = arg; + MM_MONITOR *handle = (MM_MONITOR *)mon->handle; handle->shutdown = 1; thread_wait((void *)handle->tid); @@ -564,8 +566,8 @@ monitorMain(void *arg) MONITOR* mon = (MONITOR*)arg; MM_MONITOR *handle; MONITOR_SERVERS *ptr; -int detect_stale_master; -MONITOR_SERVERS *root_master; +int detect_stale_master = false; +MONITOR_SERVERS *root_master = NULL; size_t nrounds = 0; spinlock_acquire(&mon->lock);