Hi,

Regarding the "improving replication policy in drizzle" I am writing a
project proposal. I have talked to Stewart about this project over IRC
channel.


   1. This project's main goal is to implement a facility to wait for an
   event on a table.
   2. The slave currently polls the master at regular intervals which is
   configurable, for  replication events.If the above mentioned feature is
   implemented, instead of polling, we could send  signals to slave regarding
   changes in replication log.
   3. Finally we would make sure all the test cases still pass.

*Implementation Overview:*

   1. There is already a plugin for  function interfaces in drizzle. We
   would use this interface to build our function interface which would wait
   for events on a specified table or database. The interface would be
   something like SELECT WAIT_FOR(INSERT, "local/test/table1"). This would
   wait for INSERT events on "table1" table and it would notify the slave of
   an insert event on the specified table. There is already an example of how
   to use function interface in plugin folder i.e. hello_world. I am currently
   trying to create an interface which would take arguments from an user
   looking at  the above hello_world plugin.
   2. There is already a plugin for monitoring the events in drizzled which
   is the event monitoring interface. There is also another plugin in
   drizzle/plugin/hello_events which waits for an event on a specified
   database or table which is specified in the command line while starting
   drizzled and prints to the console about the changes. We would use the
   event observer interface to create another interface which when given a
   table name or database name, notifies the observers of the changes
   happening. For e.g. this could be a slave which is interested in changes
   happening in the 'replication_log' table.
   3. In part three of the project we would make sure all type of events on
   which a slave is interested is covered in our interface and all the test
   cases for slave still pass.

Am I required to produce some UML diagrams, use cases and  design document?
I have not included the time out part because I couldn't understand the
need of it. let's say there is this statement SELECT WAIT_FOR(INSERT,
'replication_log', 1). Does this mean that this would notify the slave of
inserts which takes place within 1 second of issuing this statement?

Thanks and Regards,
Ajaya K Agrawal
IIT Hyderabad
irc nick name: aj_*
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : drizzle-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to