MXS-1725 Use normal routing route when mocking
As results provided directly by filters are now delivered properly, the functionality of the session must be used also when mocking.
This commit is contained in:
@ -158,7 +158,7 @@ int test(mock::Session& session,
|
||||
pStatement = mock::create_com_query(select);
|
||||
|
||||
cout << "Performing select: \"" << select << "\"" << flush;
|
||||
filter_session.routeQuery(pStatement);
|
||||
session.route_query(pStatement);
|
||||
|
||||
if (!router_session.idle())
|
||||
{
|
||||
@ -176,7 +176,7 @@ int test(mock::Session& session,
|
||||
pStatement = mock::create_com_query(select);
|
||||
|
||||
cout << "Performing same select: \"" << select << "\"" << flush;
|
||||
filter_session.routeQuery(pStatement);
|
||||
session.route_query(pStatement);
|
||||
|
||||
if (tc.should_use)
|
||||
{
|
||||
@ -216,7 +216,7 @@ int test(mock::Session& session,
|
||||
pStatement = mock::create_com_query("UPDATE tbl SET a=1;");
|
||||
|
||||
cout << "Performing update: \"" << update << "\"" << flush;
|
||||
filter_session.routeQuery(pStatement);
|
||||
session.route_query(pStatement);
|
||||
|
||||
if (router_session.idle())
|
||||
{
|
||||
@ -233,7 +233,7 @@ int test(mock::Session& session,
|
||||
pStatement = mock::create_com_query(select);
|
||||
|
||||
cout << "Performing select: \"" << select << "\"" << flush;
|
||||
filter_session.routeQuery(pStatement);
|
||||
session.route_query(pStatement);
|
||||
|
||||
if (router_session.idle())
|
||||
{
|
||||
@ -260,7 +260,7 @@ int test(mock::Session& session,
|
||||
pStatement = mock::create_com_query(select);
|
||||
|
||||
cout << "Performing select: \"" << select << "\"" << flush;
|
||||
filter_session.routeQuery(pStatement);
|
||||
session.route_query(pStatement);
|
||||
|
||||
if (router_session.idle())
|
||||
{
|
||||
|
@ -72,6 +72,11 @@ auto_ptr<FilterModule::Session> FilterModule::Instance::newSession(MXS_SESSION*
|
||||
|
||||
if (pFilter_session)
|
||||
{
|
||||
// TODO: Won't work with multiple filters in chain.
|
||||
pSession->head.instance = m_pInstance;
|
||||
pSession->head.session = pFilter_session;
|
||||
pSession->head.routeQuery = m_module.m_pApi->routeQuery;
|
||||
|
||||
sFilter_session.reset(new Session(this, pFilter_session));
|
||||
}
|
||||
|
||||
|
@ -66,6 +66,11 @@ public:
|
||||
session_set_trx_state(this, state);
|
||||
}
|
||||
|
||||
bool route_query(GWBUF* pBuffer)
|
||||
{
|
||||
return session_route_query(this, pBuffer);
|
||||
}
|
||||
|
||||
private:
|
||||
Client& m_client;
|
||||
Dcb m_client_dcb;
|
||||
|
Reference in New Issue
Block a user