summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/r
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-06-11 13:02:47 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2018-06-12 09:54:31 +0300
commit0ad9c3a0160d1dd46139b3e6b6b05d0fba01540b (patch)
treed5ca6f909b26604fdffe617afa1f4f6089e38e34 /mysql-test/suite/innodb/r
parent24d7cbe1e0a16f75e2325c84f23531742e2a035d (diff)
downloadmariadb-git-0ad9c3a0160d1dd46139b3e6b6b05d0fba01540b.tar.gz
MDEV-16456 InnoDB error "returned OS error 71" complains about wrong path
When attempting to rename a table to a non-existing database, InnoDB would misleadingly report "OS error 71" when in fact the error code is InnoDB's own (OS_FILE_NOT_FOUND), and not report both pathnames. Errors on rename could occur due to reasons connected to either pathname. os_file_handle_rename_error(): New function, to report errors in renaming files.
Diffstat (limited to 'mysql-test/suite/innodb/r')
-rw-r--r--mysql-test/suite/innodb/r/rename_table.result5
1 files changed, 5 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/rename_table.result b/mysql-test/suite/innodb/r/rename_table.result
new file mode 100644
index 00000000000..b2e15c87348
--- /dev/null
+++ b/mysql-test/suite/innodb/r/rename_table.result
@@ -0,0 +1,5 @@
+call mtr.add_suppression("InnoDB: (Operating system error|The error means|Cannot rename file)");
+CREATE TABLE t1 (a INT) ENGINE=InnoDB;
+RENAME TABLE t1 TO non_existing_db.t1;
+ERROR HY000: Error on rename of './test/t1' to './non_existing_db/t1' (errno: -1 "Internal error < 0 (Not system error)")
+DROP TABLE t1;