summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorNirbhay Choubey <nirbhay@mariadb.com>2015-12-07 14:01:52 -0500
committerNirbhay Choubey <nirbhay@mariadb.com>2015-12-18 14:35:56 -0500
commit58b54b7d1a4ce4e3a9537c058bb5ba300c88c0de (patch)
tree0477d648ce497267b8aec17335c53de6cc324f13 /mysys
parent428e09a789a17211de9b4f0a2c4c1226d5dcf993 (diff)
downloadmariadb-git-58b54b7d1a4ce4e3a9537c058bb5ba300c88c0de.tar.gz
MDEV-9044 : Binlog corruption in Galera
While refreshing the IO_CACHE, do not update its parameters (read_pos, read_end & pos_in_file) if there is nothing left to read.
Diffstat (limited to 'mysys')
-rw-r--r--mysys/mf_iocache.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/mysys/mf_iocache.c b/mysys/mf_iocache.c
index 28e5e72130d..db8d0b51ada 100644
--- a/mysys/mf_iocache.c
+++ b/mysys/mf_iocache.c
@@ -663,7 +663,11 @@ int _my_b_cache_read(IO_CACHE *info, uchar *Buffer, size_t Count)
info->error= (int) left_length;
DBUG_RETURN(1);
}
- length=0; /* Didn't read any chars */
+ else
+ {
+ info->error= 0;
+ DBUG_RETURN(0); /* EOF */
+ }
}
else if ((length= mysql_file_read(info->file,info->buffer, max_length,
info->myflags)) < Count ||