-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Test Csuite
-
Storage Engines
-
StorEng - Defined Pipeline
The utility function testutil_copy_data incorrectly constructs a pathname for a save directory when given an absolute path. This causes an error like:
test_random_abort: FAILED: void testutil_copy_ext(const char *, const char *, const WT_FILE_COPY_OPTS *)/471: mkdir(dest, source_stat.st_mode) == 0: No such file or directory
For example, we get the error above, given this command:
./test_random_abort -T 5 -t 10 -h /mnt/data0/sue/13307/S
and the directory constructed is:
(gdb) frame 5 #5 0x0000000000408ef3 in testutil_copy_data ( dir=0x614340 <home> "/mnt/data0/sue/13307/S") at ../test/utility/misc.c:240 240 testutil_copy_ext(".", save_dir, &opts); (gdb) p save_dir $1 = "..//mnt/data0/sue/13307/S.SAVE", '\000' <repeats 426 times>...
The program, immediately before has done a chdir into S and the path that should get constructed would be either ../S.SAVE or /mnt/data0/sue/13307/S/../S.SAVE.