28bd7c2202
Merge branch '1.2.1-binlog_router_trx' into develop
2016-02-19 18:51:59 +02:00
59f5880898
Added missing OK byte to payload size calculation
...
The OK byte was not taken into notice when the total size of all the payloads
in all the packets was calculated.
2016-02-17 08:30:50 +02:00
63ce9fe6bc
Fixed formatting and added more error checks
...
Added log messages when ftruncate fails and cleaned up formatting.
2016-02-16 13:06:25 +02:00
cd2af6ffef
Cleaned up the code based on the code review
...
Added missing error condition checks and cleaned up code.
2016-02-16 13:06:25 +02:00
a55f017c75
Fixed packets with a length of one being ignored
...
The packets were not written into the binlogs which caused binlog corruption.
2016-02-16 13:06:25 +02:00
9306b9d68c
Added detection of checksums split across two packets
...
The checksums should now be processed properly event if the event is in more than
one packet.
2016-02-16 13:06:25 +02:00
36896afcbd
Fixed missing NULL check when reading records
...
If the binlog record was not found, a NULL pointer is returned. There was no
check for the return value and it assumed that it was always non-NULL.
2016-02-16 13:06:25 +02:00
74c8b5e296
Fixed events larger than 2^24 failing without transaction safety
...
If transaction safety was disabled and a large event sent in multiple SQL
packets was received, the distribution of that event to the slaves would fail.
2016-02-16 13:06:25 +02:00
2b7e2d3043
Added checksum calculations for events larger than 2^24 bytes
...
The checksums are now properly calculated for large events that span multiple
SQL packets.
2016-02-16 13:06:25 +02:00
3609f97ba0
Fixed events which are exactly 0x00fffffe bytes long failing to replicate
...
The empty packet sent after a large event which fits into exactly one packet
was written to disk and the writing of no bytes caused it to be treated as
an error.
2016-02-16 13:06:25 +02:00
476691eda1
Removed log message for event larger than 16MB
...
The log message used during tests is now removed
2016-02-16 13:06:25 +02:00
3e04a36ac3
Added support for distribution of packets larger than 2^24 bytes
...
Moved the the sending of the replication events to a different function
and added support for events that span multiple MySQL packets.
2016-02-16 13:06:25 +02:00
d2b4713d27
Added missing condition to else clause
...
This fixes all packets being considered as large packets.
2016-02-16 13:06:25 +02:00
ae33df3cbc
Large events are now processed in chuncks
...
The router->last_written is used to store the position where the last event was
written. The replication header is also stored in a separate structure in
the router which is used later when the last packet of a multi-packet event
arrives.
2016-02-16 13:06:24 +02:00
d3e1d4dd2f
First fix for 16MB handling in the master part
...
First fix for 16MB handling in the master part.
Distribute events to up to date slave is not included yet
2016-02-16 13:06:24 +02:00
d9b022db10
Protect updating of router when rotating.
...
When rotating, all state variables of router are now updated while
protected by the router->binlog_lock lock.
2016-01-28 15:23:22 +02:00
0deffbf2f2
Ensure that slave->cstate contains meaningful value.
...
In blr_slave_callback the bits of slave->cstate are reset and
set as one transaction. Earlier they were reset in one and
set in another, leading to a situation where slave->cstate did
not contain a sensible value for a short period of time.
Further, it is now explicitly checked in blr_distribute_binlog_record
that slave->cstate indeed contains a meaningful value.
2016-01-28 11:00:07 +02:00
2715d3f8e4
Removed the 16 chars limitation for binlog file name
...
Removed the 16 chars limitation for binlog file name
2016-01-07 15:30:57 +01:00
d99cece151
Removed the 16 chars limitation for binlog file name
...
Removed the 16 chars limitation for binlog file name
2016-01-07 15:29:11 +01:00
49cf4089fc
Make state-change logging conditional.
2015-12-10 15:50:20 +02:00
f49bd06a7e
Reduce logging of binlog server
...
Only the true state changes of a slave - up-to-date -> catch-up
or catch-up to up-to-date - are logged.
2015-12-10 15:50:20 +02:00
3f31f5548d
Addition of slave transition to catchup mode in logging
...
Addition of slave transition to catchup mode in logging
2015-12-10 15:50:20 +02:00
231a620dc0
Remove >= 0 check from unsigned type.
2015-12-08 14:37:21 +02:00
2f54f33cfb
Make state-change logging conditional.
2015-12-03 09:54:31 +02:00
af7a19b7b3
Reduce logging of binlog server
...
Only the true state changes of a slave - up-to-date -> catch-up
or catch-up to up-to-date - are logged.
2015-12-02 15:23:55 +02:00
a53213093a
Addition of slave transition to catchup mode in logging
...
Addition of slave transition to catchup mode in logging
2015-12-01 16:16:14 +01:00
023d4bc588
Develop merge
...
Develop merge
2015-11-19 17:06:30 +01:00
afdeb6fa5b
binlogrouter: All LOGIFs and skygw_log_writes replaced.
...
All LOGIFs and skygw_log_writes replaced with the equivalent
MXS_[ERROR|WARNING|NOTICE|INFO|DEBUG] macros.
2015-11-18 12:35:21 +02:00
f06eec13f6
Merge branch 'develop' into 1.2.1-binlog_router_trx
2015-11-17 09:50:25 +01:00
82dc3ff3c5
Update lastReply with heartbeat event
...
Update lastReply when heartbeat event is seen and a transaction is
still open
2015-11-17 09:47:21 +01:00
a90b336cc4
blr_master_reconnect instead of blr_start_master
...
blr_master_reconnect instead of blr_start_master in
blr_stop_start_master
2015-11-16 15:55:08 +01:00
a355e1beef
Printf format checking added to logging function.
...
Printf format checking added to logging function and all
issues that were revealed by that fixed.
2015-11-16 12:40:49 +02:00
00c506b029
Fix for rotate and catchup with transaction_safety = 1
...
Fix for rotate and catchup with transaction_safety = 1
2015-11-06 18:14:52 +01:00
834a88aeda
Log variables moved to log_manager.h
...
The log manager variables lm_enabled_log_files_bitmask, log_ses_count
and tls_log_info that earlier were declared separately in every
c-file are now declared in the log_manager.h header.
2015-11-04 14:26:53 +02:00
8208f3a728
strerror_r update
...
strerror_r update
2015-10-23 18:44:39 +02:00
3be5238bd7
Fixed indentation.
2015-10-23 15:05:51 +03:00
63f4bc3aec
Changed from router->binlog_lock to router->lock for transaction safety code and cleaned up code.
2015-10-23 14:54:08 +03:00
40ffe21dd8
Added a variable for current event being processed after a transaction is committed.
2015-10-23 12:33:51 +03:00
1e76de540f
Added blr_distribute_error_message when distributing transaction events
...
Added blr_distribute_error_message when distributing transaction events
2015-10-02 09:46:52 +02:00
d31e081e45
Changed log messages for blr_read_binlog, added slave send error feaure
...
Changed log messages for blr_read_binlog, added slave send error feaure.
When blr_read_binlog detects an error an error message with 1236 code
is sent to the slave and it will stop the replication to binlogrouter
2015-10-01 17:03:48 +02:00
680589ed46
Slave heartbeat period is reported in diagnostics
...
Slave heartbeat period is reported in diagnostics only if router option
is set
2015-09-30 15:21:18 +02:00
f9ee9ca028
Addition of send_slave_heartbeat option
...
Addition of send_slave_heartbeat option
2015-09-30 14:39:26 +02:00
b6df52a68e
Addition of slave heartbeat check
...
Addition of slave heartbeat check
2015-09-25 15:58:36 +02:00
89748d9b21
Binlog identity log message update
...
Binlog identity log message update
2015-09-18 11:18:32 +02:00
81e186fd92
server-id reported as server_id in binlog_identity log
...
server-id reported as server_id in binlog_identity log
2015-09-18 10:09:11 +02:00
3822cae9c2
blr_log_identity() moved to the right location
...
blr_log_identity() moved to the right location
2015-09-16 17:28:32 +02:00
e4677fbd44
Log message fix
...
Log message fix
2015-09-16 17:16:20 +02:00
faaf33918d
Binlog Identity is logged with MESSAGE
...
Binlog Identity is logged with MESSAGE
2015-09-16 15:44:50 +02:00
fac4b3ff11
Fix for MariaDB 10
...
Fix for MariaDB 10
2015-09-15 19:10:23 +02:00
c12233db0d
Small fixes
...
Small fixes
2015-09-15 16:50:15 +02:00