After correcting a few bugs to make it work properly, I test it on 2 drupal sites.
What I saw was that your system would never work because when you create an ID on a site the resquest is something like :
# INSERT INTO node_revisions (nid, uid, title, body, teaser, log, timestamp, format) VALUES (0, 1, 'master - staging - test 10', 'test', 'test', '', 1272014769, 1)
# INSERT INTO node (vid, type, language, title, uid, status, created, changed, comment, promote, moderate, sticky, tnid, translate) VALUES (161, 'page', '', 'master - staging - test 10', 1, 1, 1272014769, 1272014769, 0, 1, 0, 0, 0, 0)
# UPDATE node_revisions SET nid = 161 WHERE vid = 161

Notice that node_revisions.nid and uid are 0 and 1 because Drupal uses MySQL auto increment.
So the result is that the node ID will not be the same on the master and the slave. The link between node_revisions and node is broken.
BOUM.

Comments

joetsuihk’s picture

it is very true indeed.

but if ur drupal do not contain user generated content, it is possible to do all content in sync with the same id. a very weak link though....