1984
1984
cleanupTransactionMessage(transaction, in_session);
1987
void TransactionServices::alterSchema(Session *in_session,
1988
const message::schema::shared_ptr &old_schema,
1989
const message::Schema &new_schema)
1991
ReplicationServices &replication_services= ReplicationServices::singleton();
1992
if (! replication_services.isActive())
1995
message::Transaction *transaction= getActiveTransactionMessage(in_session);
1996
message::Statement *statement= transaction->add_statement();
1998
initStatementMessage(*statement, message::Statement::ALTER_SCHEMA, in_session);
2001
* Construct the specialized AlterSchemaStatement message and attach
2002
* it to the generic Statement message
2004
message::AlterSchemaStatement *alter_schema_statement= statement->mutable_alter_schema_statement();
2006
message::Schema *before= alter_schema_statement->mutable_before();
2007
message::Schema *after= alter_schema_statement->mutable_after();
2009
*before= *old_schema;
2012
finalizeStatementMessage(*statement, in_session);
2014
finalizeTransactionMessage(*transaction, in_session);
2016
(void) replication_services.pushTransactionMessage(*in_session, *transaction);
2018
cleanupTransactionMessage(transaction, in_session);
1987
2021
void TransactionServices::dropTable(Session *in_session,
1988
2022
const TableIdentifier &table,
1989
2023
bool if_exists)