Yes, I see what he means. My first thought was "but the binlog records the
thread IDs of each statement, doesn't it" - but I find that it doesn't
output it for commits (or even any non-SQL/DML), for some reason.
Regular statement:
> # at 145848
> #101201 8:16:02 server id 4 end_log_pos 145961 Query
> thread_id=285357510 exec_time=0 error_code=0
> SET TIMESTAMP=1291187762;
> DELETE FROM flood WHERE timestamp < 1291184162;
>
Commit:
> # at 185354
> #101201 8:19:35 server id 4 end_log_pos 185381 Xid = 22794780179
> COMMIT;
>
Note the absence of a thread_id in the latter - it has the XA transaction ID
instead, but the Xid is also not specified by any specific statements
belonging to that transaction as far as I can see.
The information must be in there, or replication couldn't work; but
mysqlbinlog doesn't show it, apparently.
An interesting question indeed, and one I'd like to know the answer to.
--
Bier met grenadyn
Is als mosterd by den wyn
Sy die't drinkt, is eene kwezel
Hy die't drinkt, is ras een ezel