Commit 348416e9 authored by unknown's avatar unknown

Fix for service names on windows; Now we always put the service name last when we create a service



myisam/mi_test2.c:
  Moved test so that resize_key_cache() is always tested
mysys/mf_keycache.c:
  Fixed comment
parent a2611f9e
...@@ -267,9 +267,9 @@ int main(int argc, char *argv[]) ...@@ -267,9 +267,9 @@ int main(int argc, char *argv[])
puts("got error from mi_extra(HA_EXTRA_NO_CACHE)"); puts("got error from mi_extra(HA_EXTRA_NO_CACHE)");
goto end; goto end;
} }
if (key_cacheing)
resize_key_cache(key_cache_size*2);
} }
if (key_cacheing)
resize_key_cache(key_cache_size*2);
if (!silent) if (!silent)
printf("- Delete\n"); printf("- Delete\n");
......
...@@ -669,7 +669,7 @@ static int flush_key_blocks_int(File file, enum flush_type type) ...@@ -669,7 +669,7 @@ static int flush_key_blocks_int(File file, enum flush_type type)
Flush all blocks for a specific file to disk Flush all blocks for a specific file to disk
SYNOPSIS SYNOPSIS
flush_all_key_blocks() flush_key_blocks()
file File descriptor file File descriptor
type Type of flush operation type Type of flush operation
......
...@@ -1958,7 +1958,7 @@ extern "C" pthread_handler_decl(handle_shutdown,arg) ...@@ -1958,7 +1958,7 @@ extern "C" pthread_handler_decl(handle_shutdown,arg)
#endif #endif
const char *load_default_groups[]= { "mysqld","server",MYSQL_BASE_VERSION,0 }; const char *load_default_groups[]= { "mysqld","server",MYSQL_BASE_VERSION,0,0};
bool open_log(MYSQL_LOG *log, const char *hostname, bool open_log(MYSQL_LOG *log, const char *hostname,
const char *opt_name, const char *extension, const char *opt_name, const char *extension,
...@@ -2561,7 +2561,7 @@ default_service_handling(char **argv, ...@@ -2561,7 +2561,7 @@ default_service_handling(char **argv,
const char *extra_opt) const char *extra_opt)
{ {
char path_and_service[FN_REFLEN+FN_REFLEN+32], *pos, *end; char path_and_service[FN_REFLEN+FN_REFLEN+32], *pos, *end;
end= path_and_service + sizeof(path_and_service)-1; end= path_and_service + sizeof(path_and_service)-3;
/* We have to quote filename if it contains spaces */ /* We have to quote filename if it contains spaces */
pos= add_quoted_string(path_and_service, file_path, end); pos= add_quoted_string(path_and_service, file_path, end);
...@@ -2571,7 +2571,9 @@ default_service_handling(char **argv, ...@@ -2571,7 +2571,9 @@ default_service_handling(char **argv,
*pos++= ' '; *pos++= ' ';
pos= add_quoted_string(pos, extra_opt, end); pos= add_quoted_string(pos, extra_opt, end);
} }
*pos= 0; // Ensure end null /* We must have servicename last */
*pos++= ' ';
strmake(pos, servicename, (uint) (end+2 - pos));
if (Service.got_service_option(argv, "install")) if (Service.got_service_option(argv, "install"))
{ {
...@@ -2616,7 +2618,7 @@ int main(int argc, char **argv) ...@@ -2616,7 +2618,7 @@ int main(int argc, char **argv)
if (Service.IsService(argv[1])) if (Service.IsService(argv[1]))
{ {
/* start an optional service */ /* start an optional service */
load_default_groups[0]= argv[1]; load_default_groups[3]= argv[1];
start_mode= 1; start_mode= 1;
Service.Init(argv[1], mysql_service); Service.Init(argv[1], mysql_service);
return 0; return 0;
...@@ -2624,8 +2626,7 @@ int main(int argc, char **argv) ...@@ -2624,8 +2626,7 @@ int main(int argc, char **argv)
} }
else if (argc == 3) /* install or remove any optional service */ else if (argc == 3) /* install or remove any optional service */
{ {
if (!default_service_handling(argv, argv[2], argv[2], file_path, if (!default_service_handling(argv, argv[2], argv[2], file_path, ""))
argv[2]))
return 0; return 0;
if (Service.IsService(argv[2])) if (Service.IsService(argv[2]))
{ {
...@@ -2637,6 +2638,7 @@ int main(int argc, char **argv) ...@@ -2637,6 +2638,7 @@ int main(int argc, char **argv)
opt_argc= 2; // Skip service-name opt_argc= 2; // Skip service-name
opt_argv=argv; opt_argv=argv;
start_mode= 1; start_mode= 1;
load_default_groups[3]= argv[2];
Service.Init(argv[2], mysql_service); Service.Init(argv[2], mysql_service);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment