summaryrefslogtreecommitdiff
path: root/mysys/my_write.c
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2012-08-22 16:45:25 +0200
committerSergei Golubchik <sergii@pisem.net>2012-08-22 16:45:25 +0200
commitf72a7659976089dc6f727bb31e8a91306199cf57 (patch)
tree0199cd1bf1c16b01b358ab88e5dce5b038349872 /mysys/my_write.c
parented06ba3492d55c9e9dde231b55352f854e5e4b50 (diff)
parent1fd8150a5b5e3f56aa3c253225929a07ee9a4026 (diff)
downloadmariadb-git-f72a7659976089dc6f727bb31e8a91306199cf57.tar.gz
5.2 merge.
two tests still fail: main.innodb_icp and main.range_vs_index_merge_innodb call records_in_range() with both range ends being open (which triggers an assert)
Diffstat (limited to 'mysys/my_write.c')
-rw-r--r--mysys/my_write.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/mysys/my_write.c b/mysys/my_write.c
index 96f25a5bc57..a93f6030c1e 100644
--- a/mysys/my_write.c
+++ b/mysys/my_write.c
@@ -50,6 +50,17 @@ size_t my_write(int Filedes, const uchar *Buffer, size_t Count, myf MyFlags)
#else
writtenbytes= write(Filedes, Buffer, Count);
#endif
+
+ /**
+ To simulate the write error set the errno = error code
+ and the number pf written bytes to -1.
+ */
+ DBUG_EXECUTE_IF ("simulate_file_write_error",
+ {
+ errno= ENOSPC;
+ writtenbytes= (size_t) -1;
+ });
+
if (writtenbytes == Count)
break;
if (writtenbytes != (size_t) -1)