Merge lp:~vjsamuel/drizzle/rplugin-multi-thread into lp:~drizzle-trunk/drizzle/development

Proposed by Vijay Samuel
Status: Merged
Merged at revision: 1686
Proposed branch: lp:~vjsamuel/drizzle/rplugin-multi-thread
Merge into: lp:~drizzle-trunk/drizzle/development
Diff against target: 158 lines (+22/-100)
2 files modified
plugin/multi_thread/multi_thread.cc (+22/-1)
po/POTFILES.in (+0/-99)
To merge this branch: bzr merge lp:~vjsamuel/drizzle/rplugin-multi-thread
Reviewer Review Type Date Requested Status
Drizzle Merge Team Pending
Review via email: mp+31612@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugin/multi_thread/multi_thread.cc'
2--- plugin/multi_thread/multi_thread.cc 2010-05-18 18:20:56 +0000
3+++ plugin/multi_thread/multi_thread.cc 2010-08-03 06:01:40 +0000
4@@ -16,7 +16,10 @@
5 #include "config.h"
6 #include <plugin/multi_thread/multi_thread.h>
7 #include "drizzled/pthread_globals.h"
8+#include <boost/program_options.hpp>
9+#include <drizzled/module/option_map.h>
10
11+namespace po= boost::program_options;
12 using namespace std;
13 using namespace drizzled;
14
15@@ -89,6 +92,17 @@
16
17 static int init(drizzled::module::Context &context)
18 {
19+
20+ const module::option_map &vm= context.getOptions();
21+ if (vm.count("max-threads"))
22+ {
23+ if (max_threads > 4096 || max_threads < 1)
24+ {
25+ errmsg_printf(ERRMSG_LVL_ERROR, _("Invalid value for max-threads\n"));
26+ exit(-1);
27+ }
28+ }
29+
30 scheduler= new MultiThreadScheduler("multi_thread");
31 context.add(scheduler);
32
33@@ -100,6 +114,13 @@
34 N_("Maximum number of user threads available."),
35 NULL, NULL, 2048, 1, 4096, 0);
36
37+static void init_options(drizzled::module::option_context &context)
38+{
39+ context("max-threads",
40+ po::value<uint32_t>(&max_threads)->default_value(2048),
41+ N_("Maximum number of user threads available."));
42+}
43+
44 static drizzle_sys_var* sys_variables[]= {
45 DRIZZLE_SYSVAR(max_threads),
46 NULL
47@@ -115,6 +136,6 @@
48 PLUGIN_LICENSE_GPL,
49 init, /* Plugin Init */
50 sys_variables, /* system variables */
51- NULL /* config options */
52+ init_options /* config options */
53 }
54 DRIZZLE_DECLARE_PLUGIN_END;
55
56=== removed file 'po/POTFILES.in'
57--- po/POTFILES.in 2010-07-27 00:41:57 +0000
58+++ po/POTFILES.in 1970-01-01 00:00:00 +0000
59@@ -1,99 +0,0 @@
60-client/drizzle.cc
61-client/drizzledump.cc
62-client/drizzleimport.cc
63-client/drizzleslap.cc
64-client/drizzletest.cc
65-drizzled/cursor.cc
66-drizzled/db.cc
67-drizzled/drizzled.cc
68-drizzled/error.cc
69-drizzled/gettext.h
70-drizzled/ha_commands.cc
71-drizzled/identifier/schema.cc
72-drizzled/identifier/table.cc
73-drizzled/internal/default.cc
74-drizzled/main.cc
75-drizzled/message/transaction_reader.cc
76-drizzled/message/transaction_writer.cc
77-drizzled/module/library.cc
78-drizzled/module/loader.cc
79-drizzled/module/registry.h
80-drizzled/option.cc
81-drizzled/plugin/authentication.cc
82-drizzled/plugin/authorization.cc
83-drizzled/plugin/error_message.cc
84-drizzled/plugin/event_observer.cc
85-drizzled/plugin/function.cc
86-drizzled/plugin/listen.cc
87-drizzled/plugin/listen_tcp.cc
88-drizzled/plugin/logging.cc
89-drizzled/plugin/query_cache.cc
90-drizzled/plugin/query_rewrite.cc
91-drizzled/plugin/scheduler.cc
92-drizzled/plugin/schema_engine.cc
93-drizzled/plugin/storage_engine.cc
94-drizzled/plugin/table_function.cc
95-drizzled/plugin/xa_resource_manager.cc
96-drizzled/plugin/xa_storage_engine.cc
97-drizzled/replication_services.cc
98-drizzled/session.cc
99-drizzled/set_var.cc
100-drizzled/show.cc
101-drizzled/signal_handler.cc
102-drizzled/sql_base.cc
103-drizzled/sql_select.cc
104-drizzled/sql_table.cc
105-drizzled/sql_yacc.cc
106-drizzled/stacktrace.cc
107-drizzled/statement/alter_table.cc
108-drizzled/table.cc
109-drizzled/table_share.cc
110-drizzled/transaction_services.cc
111-drizzled/tztime.cc
112-gnulib/getopt.c
113-gnulib/gettext.h
114-plugin/auth_file/auth_file.cc
115-plugin/auth_http/auth_http.cc
116-plugin/auth_ldap/auth_ldap.cc
117-plugin/blitzdb/ha_blitz.h
118-plugin/console/console.cc
119-plugin/default_replicator/default_replicator.cc
120-plugin/drizzle_protocol/drizzle_protocol.cc
121-plugin/drizzle_protocol/errmsg.cc
122-plugin/embedded_innodb/embedded_innodb_engine.cc
123-plugin/errmsg_notify/errmsg_notify.cc
124-plugin/errmsg_stderr/errmsg_stderr.cc
125-plugin/filtered_replicator/filtered_replicator.cc
126-plugin/hello_events/hello_events.cc
127-plugin/innobase/handler/data_dictionary.cc
128-plugin/innobase/ut/ut0auxconf_pause.c
129-plugin/logging_gearman/logging_gearman.cc
130-plugin/logging_query/logging_query.cc
131-plugin/logging_stats/logging_stats.cc
132-plugin/md5/md5.cc
133-plugin/memcached_stats/analysis_table.cc
134-plugin/memcached_stats/memcached_stats.cc
135-plugin/memcached_stats/stats_table.cc
136-plugin/multi_thread/multi_thread.cc
137-plugin/multi_thread/multi_thread.h
138-plugin/myisam/ha_myisam.cc
139-plugin/myisam/my_handler_errors.cc
140-plugin/mysql_protocol/mysql_protocol.cc
141-plugin/pbms/src/parameters_ms.cc
142-plugin/pool_of_threads/pool_of_threads.cc
143-plugin/pool_of_threads/pool_of_threads.h
144-plugin/pool_of_threads/session_scheduler.cc
145-plugin/rabbitmq/rabbitmq_log.cc
146-plugin/signal_handler/signal_handler.cc
147-plugin/single_thread/single_thread.h
148-plugin/syslog/errmsg.cc
149-plugin/syslog/function.cc
150-plugin/syslog/logging.cc
151-plugin/syslog/module.cc
152-plugin/transaction_log/background_worker.cc
153-plugin/transaction_log/hexdump_transaction_message.cc
154-plugin/transaction_log/module.cc
155-plugin/transaction_log/print_transaction_message.cc
156-plugin/transaction_log/transaction_log.cc
157-plugin/transaction_log/transaction_log_reader.cc
158-plugin/transaction_log/write_buffer.cc