
Now properly checks if configuration and diagnostics functions are ran in either main() or in the admin worker. This is useful for debugging and enforcing thread safety. Also, monitors are now started and stopped in the admin worker.
43 lines
1.0 KiB
C++
43 lines
1.0 KiB
C++
/*
|
|
* Copyright (c) 2018 MariaDB Corporation Ab
|
|
*
|
|
* Use of this software is governed by the Business Source License included
|
|
* in the LICENSE.TXT file and at www.mariadb.com/bsl11.
|
|
*
|
|
* Change Date: 2023-01-01
|
|
*
|
|
* On the date above, in accordance with the Business Source License, use
|
|
* of this software will be governed by version 2 or later of the General
|
|
* Public License.
|
|
*/
|
|
#pragma once
|
|
|
|
/**
|
|
* @file core/maxscale/maxscale.hh - The private maxscale general definitions
|
|
*/
|
|
|
|
#include <maxscale/maxscale.h>
|
|
|
|
/**
|
|
* Initiate shutdown of MaxScale.
|
|
*
|
|
* This functions informs all threads that they should stop the
|
|
* processing and exit.
|
|
*
|
|
* @return How many times maxscale_shutdown() has been called.
|
|
*/
|
|
int maxscale_shutdown(void);
|
|
|
|
/**
|
|
* Reset the start time from which the uptime is calculated.
|
|
*/
|
|
void maxscale_reset_starttime(void);
|
|
|
|
// Helper functions for debug assertions
|
|
bool maxscale_teardown_in_progress();
|
|
void maxscale_start_teardown();
|
|
|
|
bool running_in_admin_thread();
|
|
|
|
void set_admin_worker(const mxb::Worker* admin_worker);
|