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

sanity-scrub and sanity-lfsck need to support DNE

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • Lustre 2.5.0
    • Lustre 2.5.0
    • 3
    • 8232

    Description

      Currently, sanity-scrub.sh still use SINGLEMDS in the script, which make it unable to run with DNE configuration.

      Attachments

        Issue Links

          Activity

            [LU-3332] sanity-scrub and sanity-lfsck need to support DNE

            Patch has landed to Master. Please let me know if more work is needed in this ticket and I will reopen.

            jlevi Jodi Levi (Inactive) added a comment - Patch has landed to Master. Please let me know if more work is needed in this ticket and I will reopen.

            I can't imagine how happy I'd be if I knew you were to on this. Too bad neither of us had left any obvious messages here earlier.

            liwei Li Wei (Inactive) added a comment - I can't imagine how happy I'd be if I knew you were to on this. Too bad neither of us had left any obvious messages here earlier.
            keith Keith Mannthey (Inactive) added a comment - - edited

            Thanks for the link to that patch. Peter had asked me to look at this LU earlier this week.

            That is exactly the style of patch I was working on and will give it a good review.

            keith Keith Mannthey (Inactive) added a comment - - edited Thanks for the link to that patch. Peter had asked me to look at this LU earlier this week. That is exactly the style of patch I was working on and will give it a good review.
            di.wang Di Wang added a comment -

            Hmm, I thought Li wei worked on this ticket already. http://review.whamcloud.com/#change,6333

            di.wang Di Wang added a comment - Hmm, I thought Li wei worked on this ticket already. http://review.whamcloud.com/#change,6333

            Di Wang is correct a great many changes are needed. Not quite every line will have to be touched touched but pretty close.

            I am a bit of a ways into a rewrite for sanity-scrub and so far a few spots in test-framework have also be identified.

            There seems to be some loose timing built into this test in general. Spots where you expect a given transition state, I am not sure if these time checks will work as well with DNE. I am not going to focus on Logic changes to the test at this point just a conversion to DNE safe calls for v1.

            I think an incremental approach to these changes keep the reviewing of all of this sane, the removal of SINGLEMDS is no small task even just in this one test. I will work on getting some form of a reviewable patch into the system tomorrow that is not a totally a for_test_only sort of patch and setup a proper expect always to allow DNE to run a few tests.

            My approach is slightly different that Di Wangs so I will open a new patch or two. I like use of helper functions to make the test more readable and radically decrease the amount of code.

            for instance my test_0 presently looks like:

            test_0() {
                    local num
            
                    scrub_prep 0
                    echo "start $SINGLEMDS without disabling OI scrub"
            
                    start_all_mds($MOUNT_OPTS_SCRUB)
            
                    check_status("init")
                    check_flags()
            
                    mount_client $MOUNT || error "Failed to start client!"
                    check_diff()
            }
            run_test 0 "Do not auto trigger OI scrub for non-backup/restore case"
            
            keith Keith Mannthey (Inactive) added a comment - Di Wang is correct a great many changes are needed. Not quite every line will have to be touched touched but pretty close. I am a bit of a ways into a rewrite for sanity-scrub and so far a few spots in test-framework have also be identified. There seems to be some loose timing built into this test in general. Spots where you expect a given transition state, I am not sure if these time checks will work as well with DNE. I am not going to focus on Logic changes to the test at this point just a conversion to DNE safe calls for v1. I think an incremental approach to these changes keep the reviewing of all of this sane, the removal of SINGLEMDS is no small task even just in this one test. I will work on getting some form of a reviewable patch into the system tomorrow that is not a totally a for_test_only sort of patch and setup a proper expect always to allow DNE to run a few tests. My approach is slightly different that Di Wangs so I will open a new patch or two. I like use of helper functions to make the test more readable and radically decrease the amount of code. for instance my test_0 presently looks like: test_0() { local num scrub_prep 0 echo "start $SINGLEMDS without disabling OI scrub" start_all_mds($MOUNT_OPTS_SCRUB) check_status("init") check_flags() mount_client $MOUNT || error "Failed to start client!" check_diff() } run_test 0 "Do not auto trigger OI scrub for non-backup/restore case"
            di.wang Di Wang added a comment -

            http://review.whamcloud.com/6333 Unfortunately, it might need many changes, and I do not have time to finish all of them. I only fix 0 and 1a. Maybe someone else can help to fix all of the script problem. So sanity-scrub can be run with DNE. Thanks.

            di.wang Di Wang added a comment - http://review.whamcloud.com/6333 Unfortunately, it might need many changes, and I do not have time to finish all of them. I only fix 0 and 1a. Maybe someone else can help to fix all of the script problem. So sanity-scrub can be run with DNE. Thanks.

            People

              liwei Li Wei (Inactive)
              di.wang Di Wang
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: