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

sanity-compr test_184d: last component index number got assigned even if it was not used after layout swap

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      This issue was created by maloo for sarah <sarah@whamcloud.com>

      This issue relates to the following test suite run: https://testing.whamcloud.com/test_sets/7b32c252-7710-4d4e-a06b-1a7b3509b5a7

      test_184d failed with the following error:

      lovea  -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i -1 !=  -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i 2
      

      Test session details:
      clients: https://build.whamcloud.com/job/lustre-reviews/102975 - 4.18.0-477.27.1.el8_8.x86_64
      servers: https://build.whamcloud.com/job/lustre-reviews/102975 - 4.18.0-477.27.1.el8_lustre.x86_64

      <<Please provide additional information about the failure here>>

      After doing swap layout, compare the components of 2 files, the last component's index from -1 changed to a specific number even that part of component not been used yet.

      == sanity test 184d: allow stripeless layouts swap ======= 12:27:47 (1709987267)
      Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-2"(flags=O_CREAT)
      Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-3"(flags=O_CREAT)
       -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i -1
       -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i 2
       sanity test_184d: @@@@@@ FAIL: lovea  -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i -1 !=  -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i 2 
        Trace dump:
        = /usr/lib64/lustre/tests/test-framework.sh:6975:error()
        = sanity.sh:20111:test_184d()
        = /usr/lib64/lustre/tests/test-framework.sh:7315:run_one()
        = /usr/lib64/lustre/tests/test-framework.sh:7375:run_one_logged()
        = /usr/lib64/lustre/tests/test-framework.sh:7201:run_test()
        = sanity.sh:20116:main()
      

      VVVVVVV DO NOT REMOVE LINES BELOW, Added by Maloo for auto-association VVVVVVV
      sanity-compr test_184d - lovea -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i -1 != -E 1048576 -c 1 -S 1048576 -L raid0 -i 1 -E -1 -c 1 -S 4194304 -L raid0 -i

      Attachments

        Issue Links

          Activity

            [LU-17694] sanity-compr test_184d: last component index number got assigned even if it was not used after layout swap

            Skipped by patch: https://review.whamcloud.com/54797 "LU-16904 tests: Fix sanity test 34h, 184d and 101i when PFL layout is used"

            adilger Andreas Dilger added a comment - Skipped by patch: https://review.whamcloud.com/54797 " LU-16904 tests: Fix sanity test 34h, 184d and 101i when PFL layout is used "
            sarah Sarah Liu added a comment - - edited

            sure, I will make a patch

            this is what I got from a passed 184d with non-PFL
            https://testing.whamcloud.com/sub_tests/e04863c5-5200-47b7-9462-de84452b4c99

            == sanity test 184d: allow stripeless layouts swap =================================================== 14:17:28 (1712240248)
            Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-2"(flags=O_CREAT)
            Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-3"(flags=O_CREAT)
             -c 1 -S 1048576 -L raid0 -i 1
             -c 1 -S 1048576 -L raid0 -i 1
            /mnt/lustre/d184d.sanity/f184d.sanity-1: trusted.lov: No such attribute
            
            sarah Sarah Liu added a comment - - edited sure, I will make a patch this is what I got from a passed 184d with non-PFL https://testing.whamcloud.com/sub_tests/e04863c5-5200-47b7-9462-de84452b4c99 == sanity test 184d: allow stripeless layouts swap =================================================== 14:17:28 (1712240248) Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-2"(flags=O_CREAT) Succeed in opening file "/mnt/lustre/d184d.sanity/f184d.sanity-3"(flags=O_CREAT) -c 1 -S 1048576 -L raid0 -i 1 -c 1 -S 1048576 -L raid0 -i 1 /mnt/lustre/d184d.sanity/f184d.sanity-1: trusted.lov: No such attribute

            sarah, for now, please make a patch to skip this test with always_except if $fs_STRIPEPARAMS is a PFL layout.

            It is also strange that the files have any layout assigned, since they are opened with "O_LOV_DELAY_CREATE", and the test is explicitly checking that there is no trusted.lov xattr at the end of the swaps, so it isn't clear what get_layout_param is printing in the non-PFL test case?

            adilger Andreas Dilger added a comment - sarah , for now, please make a patch to skip this test with always_except if $fs_STRIPEPARAMS is a PFL layout. It is also strange that the files have any layout assigned, since they are opened with " O_LOV_DELAY_CREATE ", and the test is explicitly checking that there is no trusted.lov xattr at the end of the swaps, so it isn't clear what get_layout_param is printing in the non-PFL test case?

            It looks like this is the same problem affecting the group lock (LU-9479), since "lfs swap_layouts" and "lfs migrate --block" are internally using the group lock to prevent other clients from modifying the file. This is not true with "lfs migrate" which uses a lease and can fail if the file is modified during copy, but running "lfs swap_layouts" goes from a mostly-empty PFL layout to a fully-populated PFL layout afterward.

            adilger Andreas Dilger added a comment - It looks like this is the same problem affecting the group lock ( LU-9479 ), since " lfs swap_layouts " and " lfs migrate --block " are internally using the group lock to prevent other clients from modifying the file. This is not true with " lfs migrate " which uses a lease and can fail if the file is modified during copy, but running " lfs swap_layouts " goes from a mostly-empty PFL layout to a fully-populated PFL layout afterward.

            People

              wc-triage WC Triage
              maloo Maloo
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: