Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-17583

Unclean direntry after rename

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • None
    • None
    • Alma 8 Lustre 2.15.4 client
      Centos 7 Lustre 2.12.9 server
    • 3
    • 9223372036854775807

    Description

      Environment:

      • No DNE
      • No DOM
      • Opencache disable

      Reproducer:

      On the first client:

      [root@client1 test_bug_2.12-2.15]# mkdir foo
      [root@client1 test_bug_2.12-2.15]# for i in 1 2 3 4 ; do dd if=/dev/zero bs=1k count=1k of=foo/$i  ; done
      [root@client1 test_bug_2.12-2.15]# cd foo
      [root@client1 foo]# tail -f 2
      ... 
      

      On the second client:

      [root@client2 test_bug_2.12-2.15]# mv foo/ foo.new ; mkdir foo ; mv foo.new foo/foo
      [root@client2 test_bug_2.12-2.15]# find
      .
      ./foo
      ./foo/foo
      ./foo/foo/4
      ./foo/foo/1
      ./foo/foo/2
      ./foo/foo/3 
      

      Back on the first one:

      ^C
      [root@client1 foo]# ls
      1  2  3  4
      [root@client1 foo]# cd ..
      [root@client1 test_bug_2.12-2.15]# ls foo/
      1  2  3  4 
      

      Here, we should have:

      [root@client1 test_bug_2.12-2.15]# ls foo/
      foo
      

      Then, if the directory is touched then the directory entry is sync:

      [root@client1 test_bug_2.12-2.15]# touch foo/2
      [root@client1 test_bug_2.12-2.15]# ls foo/
      foo
      [root@client1 test_bug_2.12-2.15]# ls foo/foo/
      1  2  3  4
      

      Attachments

        Activity

          People

            eaujames Etienne Aujames
            eaujames Etienne Aujames
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated: