~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/transaction_services.cc

  • Committer: Brian Aker
  • Date: 2011-01-14 02:43:41 UTC
  • mfrom: (2081.1.3 drizzle)
  • Revision ID: brian@gir-3-20110114024341-3w2x5umqw8vtohu5
Rollup changes for trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1984
1984
  cleanupTransactionMessage(transaction, in_session);
1985
1985
}
1986
1986
 
 
1987
void TransactionServices::alterSchema(Session *in_session,
 
1988
                                      const message::schema::shared_ptr &old_schema,
 
1989
                                      const message::Schema &new_schema)
 
1990
{
 
1991
  ReplicationServices &replication_services= ReplicationServices::singleton();
 
1992
  if (! replication_services.isActive())
 
1993
    return;
 
1994
  
 
1995
  message::Transaction *transaction= getActiveTransactionMessage(in_session);
 
1996
  message::Statement *statement= transaction->add_statement();
 
1997
 
 
1998
  initStatementMessage(*statement, message::Statement::ALTER_SCHEMA, in_session);
 
1999
 
 
2000
  /* 
 
2001
   * Construct the specialized AlterSchemaStatement message and attach
 
2002
   * it to the generic Statement message
 
2003
   */
 
2004
  message::AlterSchemaStatement *alter_schema_statement= statement->mutable_alter_schema_statement();
 
2005
 
 
2006
  message::Schema *before= alter_schema_statement->mutable_before();
 
2007
  message::Schema *after= alter_schema_statement->mutable_after();
 
2008
 
 
2009
  *before= *old_schema;
 
2010
  *after= new_schema;
 
2011
 
 
2012
  finalizeStatementMessage(*statement, in_session);
 
2013
 
 
2014
  finalizeTransactionMessage(*transaction, in_session);
 
2015
  
 
2016
  (void) replication_services.pushTransactionMessage(*in_session, *transaction);
 
2017
 
 
2018
  cleanupTransactionMessage(transaction, in_session);
 
2019
}
 
2020
 
1987
2021
void TransactionServices::dropTable(Session *in_session,
1988
2022
                                    const TableIdentifier &table,
1989
2023
                                    bool if_exists)