diff --git a/examples/roundrobinrouter.cpp b/examples/roundrobinrouter.cpp index 8cbae8e80..4a55fae69 100644 --- a/examples/roundrobinrouter.cpp +++ b/examples/roundrobinrouter.cpp @@ -47,7 +47,7 @@ #include #include #include -#include +#include // #define DEBUG_RRROUTER #undef DEBUG_RROUTER diff --git a/include/maxscale/queryclassifier.hh b/include/maxscale/queryclassifier.hh index 467201b81..d92289c94 100644 --- a/include/maxscale/queryclassifier.hh +++ b/include/maxscale/queryclassifier.hh @@ -18,7 +18,7 @@ #include #include #include -#include +#include #include namespace maxscale diff --git a/include/maxscale/router.h b/include/maxscale/router.h deleted file mode 100644 index ebedd6e93..000000000 --- a/include/maxscale/router.h +++ /dev/null @@ -1,293 +0,0 @@ -/* - * 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: 2022-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 router.h - The query router public interface definition - */ - -#include - -#include - -#include -#include -#include -#include -#include - -MXS_BEGIN_DECLS - -/** - * MXS_ROUTER is an opaque type representing a particular router instance. - * - * MaxScale itself does not do anything with it, except for receiving it - * from the @c createInstance function of a router module and subsequently - * passing it back to the API functions of the router. - */ -typedef struct mxs_router -{ -} MXS_ROUTER; - -/** - * MXS_ROUTER_SESSION is an opaque type representing the session related - * data of a particular router instance. - * - * MaxScale itself does not do anything with it, except for receiving it - * from the @c newSession function of a router module and subsequently - * passing it back to the API functions of the router. - */ -typedef struct mxs_router_session -{ -} MXS_ROUTER_SESSION; - -typedef enum error_action -{ - ERRACT_NEW_CONNECTION = 0x001, - ERRACT_REPLY_CLIENT = 0x002 -} mxs_error_action_t; - -/** - * @verbatim - * The "module object" structure for a query router module. All entry points - * marked with `(optional)` are optional entry points which can be set to NULL - * if no implementation is required. - * - * The entry points are: - * createInstance Called by the service to create a new instance of the query router - * newSession Called to create a new user session within the query router - * closeSession Called when a session is closed - * freeSession Called when a session is freed - * routeQuery Called on each query that requires routing - * diagnostics Called to force the router to print diagnostic output - * clientReply Called to reply to client the data from one or all backends (optional) - * handleError Called to reply to client errors with optional closeSession - * or make a request for a new backend connection - * getCapabilities Called to obtain the capabilities of the router (optional) - * destroyInstance Called for destroying a router instance (optional) - * - * @endverbatim - * - * @see load_module - */ -typedef struct mxs_router_object -{ - /** - * @brief Create a new instance of the router - * - * This function is called when a new router instance is created. The return - * value of this function will be passed as the first parameter to the - * other API functions. - * - * @param service The service where the instance is created - * @param params Parameters for the router - * - * @return New router instance on NULL on error - */ - MXS_ROUTER*(*createInstance)(SERVICE * service, MXS_CONFIG_PARAMETER* params); - - /** - * Called to create a new user session within the router - * - * This function is called when a new router session is created for a client. - * The return value of this function will be passed as the second parameter - * to the @c routeQuery, @c clientReply, @c closeSession, @c freeSession, - * and @c handleError functions. - * - * @param instance Router instance - * @param session Client MXS_SESSION object - * - * @return New router session or NULL on error - */ - MXS_ROUTER_SESSION*(*newSession)(MXS_ROUTER * instance, MXS_SESSION* session); - - /** - * @brief Called when a session is closed - * - * The router should close all objects (including backend DCBs) but not free any memory. - * - * @param instance Router instance - * @param router_session Router session - */ - void (* closeSession)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session); - - /** - * @brief Called when a session is freed - * - * The session should free all allocated memory in this function. - * - * @param instance Router instance - * @param router_session Router session - */ - void (* freeSession)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session); - - /** - * @brief Called on each query that requires routing - * - * TODO: Document how routeQuery should be used - * - * @param instance Router instance - * @param router_session Router session - * @param queue Request from the client - * - * @return If successful, the function returns 1. If an error occurs - * and the session should be closed, the function returns 0. - */ - int32_t (* routeQuery)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session, GWBUF* queue); - - - /** - * @brief Called for diagnostic output - * - * @param instance Router instance - * @param dcb DCB where the diagnostic information should be written - */ - void (* diagnostics)(MXS_ROUTER* instance, DCB* dcb); - - /** - * @brief Called for diagnostic output - * - * @param instance Router instance - * - * @return Diagnostic information in JSON format - * - * @see jansson.h - */ - json_t* (*diagnostics_json)(const MXS_ROUTER * instance); - - /** - * @brief Called for each reply packet - * - * TODO: Document how clientReply should be used - * - * @param instance Router instance - * @param router_session Router session - * @param queue Response from the server - * @param backend_dcb The backend DCB which responded to the query - */ - void (* clientReply)(MXS_ROUTER* instance, - MXS_ROUTER_SESSION* router_session, - GWBUF* queue, - DCB* backend_dcb); - - /** - * @brief Called when a backend DCB has failed - * - * @param instance Router instance - * @param router_session Router session - * @param errmsgbuf Error message buffer - * @param backend_dcb The backend DCB that has failed - * @param action The type of the action (TODO: Remove this parameter) - * - * @param succp Pointer to a `bool` which should be set to true for success or false for error - */ - void (* handleError)(MXS_ROUTER* instance, - MXS_ROUTER_SESSION* router_session, - GWBUF* errmsgbuf, - DCB* backend_dcb, - mxs_error_action_t action, - bool* succp); - - /** - * @brief Called to obtain the capabilities of the router - * - * @return Zero or more bitwise-or'd values from the mxs_routing_capability_t enum - * - * @see routing.h - */ - uint64_t (* getCapabilities)(MXS_ROUTER* instance); - - /** - * @brief Called for destroying a router instance - * - * @param instance Router instance - */ - void (* destroyInstance)(MXS_ROUTER* instance); - - /** - * @brief Configure router instance at runtime - * - * This function is guaranteed to be called by only one thread at a time. - * The router must declare the RCAP_TYPE_RUNTIME_CONFIG in its capabilities - * in order for this function to be called. - * - * Modifications to the router should be made in an atomic manner so that - * existing sessions do not read a partial configuration. One way to do this - * is to use shared pointers for storing configurations. - * - * @param instance Router instance - * @param params Updated parameters for the service. The parameters are - * validated before this function is called. - * - * @return True if reconfiguration was successful, false if reconfiguration - * failed. If reconfiguration failed, the state of the router - * instance should not be modified. - */ - bool (* configureInstance)(MXS_ROUTER* instance, MXS_CONFIG_PARAMETER* params); -} MXS_ROUTER_OBJECT; - -/** - * The router module API version. Any change that changes the router API - * must update these versions numbers in accordance with the rules in - * modinfo.h. - */ -#define MXS_ROUTER_VERSION {4, 0, 0} - -/** - * Specifies capabilities specific for routers. Common capabilities - * are defined by @c routing_capability_t. - * - * @see enum routing_capability - * - * @note The values of the capabilities here *must* be between 0x00010000 - * and 0x00800000, that is, bits 16 to 23. - */ -typedef enum router_capability -{ - RCAP_TYPE_NO_RSESSION = 0x00010000, /**< Router does not use router sessions */ - RCAP_TYPE_NO_USERS_INIT = 0x00020000, /**< Prevent the loading of authenticator - * users when the service is started */ - RCAP_TYPE_NO_AUTH = 0x00040000, /**< No `user` or `password` parameter required */ - RCAP_TYPE_RUNTIME_CONFIG = 0x00080000, /**< Router supports runtime cofiguration */ -} mxs_router_capability_t; - -typedef enum -{ - TYPE_UNDEFINED = 0, - TYPE_MASTER, - TYPE_ALL -} mxs_target_t; - -/** - * @brief Convert mxs_target_t to a string - * - * @param target Target to convert - * - * @return Target type as string - */ -static inline const char* mxs_target_to_str(mxs_target_t target) -{ - switch (target) - { - case TYPE_MASTER: - return "master"; - - case TYPE_ALL: - return "all"; - - default: - return "UNDEFINED"; - } -} - -MXS_END_DECLS diff --git a/include/maxscale/router.hh b/include/maxscale/router.hh index 278cfc40f..c97e00ba8 100644 --- a/include/maxscale/router.hh +++ b/include/maxscale/router.hh @@ -13,7 +13,278 @@ #pragma once #include -#include +#include +#include +#include +#include +#include +#include + +MXS_BEGIN_DECLS + +/** + * MXS_ROUTER is an opaque type representing a particular router instance. + * + * MaxScale itself does not do anything with it, except for receiving it + * from the @c createInstance function of a router module and subsequently + * passing it back to the API functions of the router. + */ +typedef struct mxs_router +{ +} MXS_ROUTER; + +/** + * MXS_ROUTER_SESSION is an opaque type representing the session related + * data of a particular router instance. + * + * MaxScale itself does not do anything with it, except for receiving it + * from the @c newSession function of a router module and subsequently + * passing it back to the API functions of the router. + */ +typedef struct mxs_router_session +{ +} MXS_ROUTER_SESSION; + +typedef enum error_action +{ + ERRACT_NEW_CONNECTION = 0x001, + ERRACT_REPLY_CLIENT = 0x002 +} mxs_error_action_t; + +/** + * @verbatim + * The "module object" structure for a query router module. All entry points + * marked with `(optional)` are optional entry points which can be set to NULL + * if no implementation is required. + * + * The entry points are: + * createInstance Called by the service to create a new instance of the query router + * newSession Called to create a new user session within the query router + * closeSession Called when a session is closed + * freeSession Called when a session is freed + * routeQuery Called on each query that requires routing + * diagnostics Called to force the router to print diagnostic output + * clientReply Called to reply to client the data from one or all backends (optional) + * handleError Called to reply to client errors with optional closeSession + * or make a request for a new backend connection + * getCapabilities Called to obtain the capabilities of the router (optional) + * destroyInstance Called for destroying a router instance (optional) + * + * @endverbatim + * + * @see load_module + */ +typedef struct mxs_router_object +{ + /** + * @brief Create a new instance of the router + * + * This function is called when a new router instance is created. The return + * value of this function will be passed as the first parameter to the + * other API functions. + * + * @param service The service where the instance is created + * @param params Parameters for the router + * + * @return New router instance on NULL on error + */ + MXS_ROUTER*(*createInstance)(SERVICE * service, MXS_CONFIG_PARAMETER* params); + + /** + * Called to create a new user session within the router + * + * This function is called when a new router session is created for a client. + * The return value of this function will be passed as the second parameter + * to the @c routeQuery, @c clientReply, @c closeSession, @c freeSession, + * and @c handleError functions. + * + * @param instance Router instance + * @param session Client MXS_SESSION object + * + * @return New router session or NULL on error + */ + MXS_ROUTER_SESSION*(*newSession)(MXS_ROUTER * instance, MXS_SESSION* session); + + /** + * @brief Called when a session is closed + * + * The router should close all objects (including backend DCBs) but not free any memory. + * + * @param instance Router instance + * @param router_session Router session + */ + void (* closeSession)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session); + + /** + * @brief Called when a session is freed + * + * The session should free all allocated memory in this function. + * + * @param instance Router instance + * @param router_session Router session + */ + void (* freeSession)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session); + + /** + * @brief Called on each query that requires routing + * + * TODO: Document how routeQuery should be used + * + * @param instance Router instance + * @param router_session Router session + * @param queue Request from the client + * + * @return If successful, the function returns 1. If an error occurs + * and the session should be closed, the function returns 0. + */ + int32_t (* routeQuery)(MXS_ROUTER* instance, MXS_ROUTER_SESSION* router_session, GWBUF* queue); + + + /** + * @brief Called for diagnostic output + * + * @param instance Router instance + * @param dcb DCB where the diagnostic information should be written + */ + void (* diagnostics)(MXS_ROUTER* instance, DCB* dcb); + + /** + * @brief Called for diagnostic output + * + * @param instance Router instance + * + * @return Diagnostic information in JSON format + * + * @see jansson.h + */ + json_t* (*diagnostics_json)(const MXS_ROUTER * instance); + + /** + * @brief Called for each reply packet + * + * TODO: Document how clientReply should be used + * + * @param instance Router instance + * @param router_session Router session + * @param queue Response from the server + * @param backend_dcb The backend DCB which responded to the query + */ + void (* clientReply)(MXS_ROUTER* instance, + MXS_ROUTER_SESSION* router_session, + GWBUF* queue, + DCB* backend_dcb); + + /** + * @brief Called when a backend DCB has failed + * + * @param instance Router instance + * @param router_session Router session + * @param errmsgbuf Error message buffer + * @param backend_dcb The backend DCB that has failed + * @param action The type of the action (TODO: Remove this parameter) + * + * @param succp Pointer to a `bool` which should be set to true for success or false for error + */ + void (* handleError)(MXS_ROUTER* instance, + MXS_ROUTER_SESSION* router_session, + GWBUF* errmsgbuf, + DCB* backend_dcb, + mxs_error_action_t action, + bool* succp); + + /** + * @brief Called to obtain the capabilities of the router + * + * @return Zero or more bitwise-or'd values from the mxs_routing_capability_t enum + * + * @see routing.h + */ + uint64_t (* getCapabilities)(MXS_ROUTER* instance); + + /** + * @brief Called for destroying a router instance + * + * @param instance Router instance + */ + void (* destroyInstance)(MXS_ROUTER* instance); + + /** + * @brief Configure router instance at runtime + * + * This function is guaranteed to be called by only one thread at a time. + * The router must declare the RCAP_TYPE_RUNTIME_CONFIG in its capabilities + * in order for this function to be called. + * + * Modifications to the router should be made in an atomic manner so that + * existing sessions do not read a partial configuration. One way to do this + * is to use shared pointers for storing configurations. + * + * @param instance Router instance + * @param params Updated parameters for the service. The parameters are + * validated before this function is called. + * + * @return True if reconfiguration was successful, false if reconfiguration + * failed. If reconfiguration failed, the state of the router + * instance should not be modified. + */ + bool (* configureInstance)(MXS_ROUTER* instance, MXS_CONFIG_PARAMETER* params); +} MXS_ROUTER_OBJECT; + +/** + * The router module API version. Any change that changes the router API + * must update these versions numbers in accordance with the rules in + * modinfo.h. + */ +#define MXS_ROUTER_VERSION {4, 0, 0} + +/** + * Specifies capabilities specific for routers. Common capabilities + * are defined by @c routing_capability_t. + * + * @see enum routing_capability + * + * @note The values of the capabilities here *must* be between 0x00010000 + * and 0x00800000, that is, bits 16 to 23. + */ +typedef enum router_capability +{ + RCAP_TYPE_NO_RSESSION = 0x00010000, /**< Router does not use router sessions */ + RCAP_TYPE_NO_USERS_INIT = 0x00020000, /**< Prevent the loading of authenticator + * users when the service is started */ + RCAP_TYPE_NO_AUTH = 0x00040000, /**< No `user` or `password` parameter required */ + RCAP_TYPE_RUNTIME_CONFIG = 0x00080000, /**< Router supports runtime cofiguration */ +} mxs_router_capability_t; + +typedef enum +{ + TYPE_UNDEFINED = 0, + TYPE_MASTER, + TYPE_ALL +} mxs_target_t; + +/** + * @brief Convert mxs_target_t to a string + * + * @param target Target to convert + * + * @return Target type as string + */ +static inline const char* mxs_target_to_str(mxs_target_t target) +{ + switch (target) + { + case TYPE_MASTER: + return "master"; + + case TYPE_ALL: + return "all"; + + default: + return "UNDEFINED"; + } +} + +MXS_END_DECLS namespace maxscale { diff --git a/server/core/config.cc b/server/core/config.cc index 4cdebf967..fa858b3d4 100644 --- a/server/core/config.cc +++ b/server/core/config.cc @@ -52,7 +52,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/core/config_runtime.cc b/server/core/config_runtime.cc index acf48c671..d3271be76 100644 --- a/server/core/config_runtime.cc +++ b/server/core/config_runtime.cc @@ -31,7 +31,7 @@ #include #include #include -#include +#include #include #include "internal/config.hh" diff --git a/server/core/dcb.cc b/server/core/dcb.cc index 768b5e1a0..feb33e452 100644 --- a/server/core/dcb.cc +++ b/server/core/dcb.cc @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/core/load_utils.cc b/server/core/load_utils.cc index 4d9d136bd..406224bd6 100644 --- a/server/core/load_utils.cc +++ b/server/core/load_utils.cc @@ -32,7 +32,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/core/service.cc b/server/core/service.cc index 7102b63f7..e73f64f7e 100644 --- a/server/core/service.cc +++ b/server/core/service.cc @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/core/session.cc b/server/core/session.cc index 412849166..ba51fc475 100644 --- a/server/core/session.cc +++ b/server/core/session.cc @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/authenticator/MySQLAuth/dbusers.cc b/server/modules/authenticator/MySQLAuth/dbusers.cc index 905ba860e..118dbf177 100644 --- a/server/modules/authenticator/MySQLAuth/dbusers.cc +++ b/server/modules/authenticator/MySQLAuth/dbusers.cc @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/protocol/MySQL/mariadbbackend/mysql_backend.cc b/server/modules/protocol/MySQL/mariadbbackend/mysql_backend.cc index bbc3cf9ba..cccb1e376 100644 --- a/server/modules/protocol/MySQL/mariadbbackend/mysql_backend.cc +++ b/server/modules/protocol/MySQL/mariadbbackend/mysql_backend.cc @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include #include diff --git a/server/modules/protocol/MySQL/mariadbclient/mysql_client.cc b/server/modules/protocol/MySQL/mariadbclient/mysql_client.cc index e5aeee884..746396e49 100644 --- a/server/modules/protocol/MySQL/mariadbclient/mysql_client.cc +++ b/server/modules/protocol/MySQL/mariadbclient/mysql_client.cc @@ -33,7 +33,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/protocol/maxscaled/maxscaled.cc b/server/modules/protocol/maxscaled/maxscaled.cc index db9873f9a..19bef8022 100644 --- a/server/modules/protocol/maxscaled/maxscaled.cc +++ b/server/modules/protocol/maxscaled/maxscaled.cc @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/protocol/telnetd/telnetd.cc b/server/modules/protocol/telnetd/telnetd.cc index 7fc9114f7..dc41e5368 100644 --- a/server/modules/protocol/telnetd/telnetd.cc +++ b/server/modules/protocol/telnetd/telnetd.cc @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/avrorouter/avro.cc b/server/modules/routing/avrorouter/avro.cc index 8fd8e9223..bc351a841 100644 --- a/server/modules/routing/avrorouter/avro.cc +++ b/server/modules/routing/avrorouter/avro.cc @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/avrorouter/avro_client.cc b/server/modules/routing/avrorouter/avro_client.cc index d5398179d..a815e40cb 100644 --- a/server/modules/routing/avrorouter/avro_client.cc +++ b/server/modules/routing/avrorouter/avro_client.cc @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/avrorouter/avro_main.cc b/server/modules/routing/avrorouter/avro_main.cc index df212ee86..87cac16b9 100644 --- a/server/modules/routing/avrorouter/avro_main.cc +++ b/server/modules/routing/avrorouter/avro_main.cc @@ -33,7 +33,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/blr.cc b/server/modules/routing/binlogrouter/blr.cc index dfa419ac5..7d58c9e58 100644 --- a/server/modules/routing/binlogrouter/blr.cc +++ b/server/modules/routing/binlogrouter/blr.cc @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/blr.hh b/server/modules/routing/binlogrouter/blr.hh index f5ff83391..91064bcb4 100644 --- a/server/modules/routing/binlogrouter/blr.hh +++ b/server/modules/routing/binlogrouter/blr.hh @@ -34,7 +34,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/blr_cache.cc b/server/modules/routing/binlogrouter/blr_cache.cc index b22ae5868..2748e7d1a 100644 --- a/server/modules/routing/binlogrouter/blr_cache.cc +++ b/server/modules/routing/binlogrouter/blr_cache.cc @@ -31,7 +31,7 @@ #include #include #include -#include +#include #include #include diff --git a/server/modules/routing/binlogrouter/blr_file.cc b/server/modules/routing/binlogrouter/blr_file.cc index 9b9366eb6..9e1cf298d 100644 --- a/server/modules/routing/binlogrouter/blr_file.cc +++ b/server/modules/routing/binlogrouter/blr_file.cc @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/blr_master.cc b/server/modules/routing/binlogrouter/blr_master.cc index 46ea440cd..529164978 100644 --- a/server/modules/routing/binlogrouter/blr_master.cc +++ b/server/modules/routing/binlogrouter/blr_master.cc @@ -47,7 +47,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/blr_slave.cc b/server/modules/routing/binlogrouter/blr_slave.cc index 6fbb2c2fe..b84364765 100644 --- a/server/modules/routing/binlogrouter/blr_slave.cc +++ b/server/modules/routing/binlogrouter/blr_slave.cc @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/binlogrouter/test/testbinlog.cc b/server/modules/routing/binlogrouter/test/testbinlog.cc index 24e215861..7069ff417 100644 --- a/server/modules/routing/binlogrouter/test/testbinlog.cc +++ b/server/modules/routing/binlogrouter/test/testbinlog.cc @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/cli/cli.cc b/server/modules/routing/cli/cli.cc index 452924d9a..84448e180 100644 --- a/server/modules/routing/cli/cli.cc +++ b/server/modules/routing/cli/cli.cc @@ -37,7 +37,7 @@ #include #include #include -#include +#include #include #include diff --git a/server/modules/routing/debugcli/debugcli.cc b/server/modules/routing/debugcli/debugcli.cc index f883f6ca0..8ab627421 100644 --- a/server/modules/routing/debugcli/debugcli.cc +++ b/server/modules/routing/debugcli/debugcli.cc @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include diff --git a/server/modules/routing/debugcli/debugcmd.cc b/server/modules/routing/debugcli/debugcmd.cc index f3469435b..706a9acc1 100644 --- a/server/modules/routing/debugcli/debugcmd.cc +++ b/server/modules/routing/debugcli/debugcmd.cc @@ -46,7 +46,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/maxinfo/maxinfo.cc b/server/modules/routing/maxinfo/maxinfo.cc index d7e658070..86d1acebd 100644 --- a/server/modules/routing/maxinfo/maxinfo.cc +++ b/server/modules/routing/maxinfo/maxinfo.cc @@ -36,7 +36,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/maxinfo/maxinfo_error.cc b/server/modules/routing/maxinfo/maxinfo_error.cc index cdfe69bd4..084b08577 100644 --- a/server/modules/routing/maxinfo/maxinfo_error.cc +++ b/server/modules/routing/maxinfo/maxinfo_error.cc @@ -31,7 +31,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/maxinfo/maxinfo_exec.cc b/server/modules/routing/maxinfo/maxinfo_exec.cc index 1ac699cc7..dd2937f7b 100644 --- a/server/modules/routing/maxinfo/maxinfo_exec.cc +++ b/server/modules/routing/maxinfo/maxinfo_exec.cc @@ -40,7 +40,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/maxinfo/maxinfo_parse.cc b/server/modules/routing/maxinfo/maxinfo_parse.cc index 5ed12b8dd..bba2b5a87 100644 --- a/server/modules/routing/maxinfo/maxinfo_parse.cc +++ b/server/modules/routing/maxinfo/maxinfo_parse.cc @@ -33,7 +33,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/readconnroute/readconnroute.cc b/server/modules/routing/readconnroute/readconnroute.cc index 11ff94fad..adccf2382 100644 --- a/server/modules/routing/readconnroute/readconnroute.cc +++ b/server/modules/routing/readconnroute/readconnroute.cc @@ -80,7 +80,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/readwritesplit/readwritesplit.cc b/server/modules/routing/readwritesplit/readwritesplit.cc index 54b321047..81637e424 100644 --- a/server/modules/routing/readwritesplit/readwritesplit.cc +++ b/server/modules/routing/readwritesplit/readwritesplit.cc @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #include diff --git a/server/modules/routing/readwritesplit/rwsplit_mysql.cc b/server/modules/routing/readwritesplit/rwsplit_mysql.cc index e7d57b088..fa7ab46d2 100644 --- a/server/modules/routing/readwritesplit/rwsplit_mysql.cc +++ b/server/modules/routing/readwritesplit/rwsplit_mysql.cc @@ -19,7 +19,7 @@ #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/readwritesplit/rwsplit_route_stmt.cc b/server/modules/routing/readwritesplit/rwsplit_route_stmt.cc index fa125e575..d7c8df36a 100644 --- a/server/modules/routing/readwritesplit/rwsplit_route_stmt.cc +++ b/server/modules/routing/readwritesplit/rwsplit_route_stmt.cc @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/server/modules/routing/readwritesplit/rwsplit_select_backends.cc b/server/modules/routing/readwritesplit/rwsplit_select_backends.cc index 8403e8340..e193001ba 100644 --- a/server/modules/routing/readwritesplit/rwsplit_select_backends.cc +++ b/server/modules/routing/readwritesplit/rwsplit_select_backends.cc @@ -24,7 +24,7 @@ #include #include -#include +#include using namespace maxscale; diff --git a/server/modules/routing/readwritesplit/rwsplit_session_cmd.cc b/server/modules/routing/readwritesplit/rwsplit_session_cmd.cc index 43aea773a..ff2a93e54 100644 --- a/server/modules/routing/readwritesplit/rwsplit_session_cmd.cc +++ b/server/modules/routing/readwritesplit/rwsplit_session_cmd.cc @@ -20,7 +20,7 @@ #include #include -#include +#include using namespace maxscale; diff --git a/server/modules/routing/schemarouter/schemarouterinstance.cc b/server/modules/routing/schemarouter/schemarouterinstance.cc index c984cf5cb..21994390f 100644 --- a/server/modules/routing/schemarouter/schemarouterinstance.cc +++ b/server/modules/routing/schemarouter/schemarouterinstance.cc @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include using std::string;