http://stackoverflow.com/questions/9535653/file-rename-on-ext3-appears-to-break-posix-spec I posted the above to stackoverflow – I am running a test does repeated file renames to a target file in one thread, and repeatedly reads that target file in another thread. This works fine except when there is a hard-link to the file being renamed to the target file. In this case the reading thread hits file not found errors (not always but often). This seems to break the sped for ‘rename’. The test is: #!/bin/bash touch target; for ((i=0; i < 1000; i=i+1)); do echo "snafu$i" > $1/file$i; ln $1/file$i $1/link$i mv -f $1/file$i $1/target; done; and the reading side:
if the linking step is removed from the writing thread, then no errors are seen as expected. Does anyone know why the presence of the link causes read errors during the rename? I tried creating all the temporary files and links first, then pausing and then doing the rename loop – same erros are seen on the reading side. Thanks. This email has been sent by a member of the Man group (“Man”). Man’s parent company, Man Group plc, is registered in England and Wales (company number 2921462) at Riverbank House, 2 Swan Lane, London, EC4R 3AD. |
_______________________________________________ Ext3-users mailing list Ext3-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/ext3-users