~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/signal_handler/signal_handler.cc

  • Committer: pcrews
  • Date: 2011-05-24 17:36:24 UTC
  • mfrom: (1099.4.232 drizzle)
  • Revision ID: pcrews@lucid32-20110524173624-mwr1bvq6fa1r01ao
Updated translations + 2011.05.18 tarball tag

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
   along with this program; if not, write to the Free Software
16
16
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
17
17
 
18
 
#include "config.h"
19
 
 
 
18
#include <config.h>
20
19
#include <drizzled/gettext.h>
21
20
#include <drizzled/error.h>
22
21
#include <drizzled/unireg.h>
23
22
#include <drizzled/plugin/storage_engine.h>
24
 
#include "drizzled/pthread_globals.h"
25
 
#include "drizzled/internal/my_pthread.h"
26
 
#include "drizzled/internal/my_sys.h"
27
 
#include "drizzled/plugin/daemon.h"
28
 
#include "drizzled/signal_handler.h"
29
 
 
 
23
#include <drizzled/pthread_globals.h>
 
24
#include <drizzled/internal/my_pthread.h>
 
25
#include <drizzled/internal/my_sys.h>
 
26
#include <drizzled/plugin/daemon.h>
 
27
#include <drizzled/signal_handler.h>
30
28
#include <drizzled/session.h>
31
29
#include <drizzled/session/cache.h>
32
 
 
33
 
#include "drizzled/debug.h"
34
 
 
35
 
#include "drizzled/drizzled.h"
36
 
 
37
 
#include <drizzled/refresh_version.h>
 
30
#include <drizzled/debug.h>
 
31
#include <drizzled/drizzled.h>
 
32
#include <drizzled/open_tables_state.h>
38
33
 
39
34
#include <boost/thread/thread.hpp>
40
35
#include <boost/filesystem.hpp>
124
119
  sigset_t set;
125
120
  int sig;
126
121
  internal::my_thread_init();                           // Init new thread
127
 
  boost::this_thread::at_thread_exit(&internal::my_thread_end);
128
122
  signal_thread_in_use= true;
129
123
 
130
124
  if ((drizzled::getDebug().test(drizzled::debug::ALLOW_SIGINT)))
168
162
    (Asked MontyW over the phone about this.) -Brian
169
163
 
170
164
  */
171
 
  session::Cache::singleton().mutex().lock();
172
 
  session::Cache::singleton().mutex().unlock();
 
165
  session::Cache::mutex().lock();
 
166
  session::Cache::mutex().unlock();
173
167
  COND_thread_count.notify_all();
174
168
 
175
169
  if (pthread_sigmask(SIG_BLOCK, &set, NULL))
212
206
    case SIGHUP:
213
207
      if (!abort_loop)
214
208
      {
215
 
        refresh_version++;
 
209
        g_refresh_version++;
216
210
        drizzled::plugin::StorageEngine::flushLogs(NULL);
217
211
      }
218
212
      break;
234
228
    drizzled::plugin::Daemon("Signal Handler")
235
229
  {
236
230
    // @todo fix spurious wakeup issue
237
 
    boost::mutex::scoped_lock scopedLock(session::Cache::singleton().mutex());
 
231
    boost::mutex::scoped_lock scopedLock(session::Cache::mutex());
238
232
    thread= boost::thread(signal_hand);
239
233
    signal_thread= thread.native_handle();
240
234
    COND_thread_count.wait(scopedLock);