WL#2419: MySQL Cluster Replication: Slave Execution

Affects: Server-7.1   —   Status: Assigned

SUMMARY
When cluster replication is enabled, we need to, in the SQL thread, 
propagate into NDB what server id has created this row.
IMPLEMENTATION
There are two ways updates happen at a MySQL server:
1. Execution of statement at same server
   In this case, it is up to the the SE to detect server id.
2. Application of replication log from other server
   SQL thread must be able to set server id just before 
   doing a write_row etc.  Then the SE could detect this
   id in the same way as for item 1 above.

(Brian is ok with this.)
Copyright (c) 2001-2007 by MySQL AB. All rights reserved.

A virtual method is added to the handler interface.

SYNOPSIS
--------

The synopsis for the changed parts of the handler interface is::

  class handler {
      .
      .
      .
    typedef unsigned long server_id;
    virtual void set_server(server_id id) { /* Do nothing by default */ }
      .
      .
      .
  };