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

conf-sanity test_32b: FAIL: verify quota failed

Details

    • Bug
    • Resolution: Duplicate
    • Critical
    • Lustre 2.8.0
    • Lustre 2.8.0
    • None
    • 3
    • 9223372036854775807

    Description

      While running conf-sanity test 32b with disk2_7-ldiskfs.tar.bz2 from http://review.whamcloud.com/16663, the test failed as follows:

      Disk quotas for user 60000 (uid 60000):
           Filesystem  kbytes   quota   limit   grace   files   quota   limit   grace
      /tmp/t32/mnt/lustre
                        30720*      0   20480       -       3*      0       2       -
      t32fs-MDT0000_UUID
                            0       -       0       -       1       -       0       -
      t32fs-MDT0001_UUID
                            0       -       0       -       2       -       0       -
      t32fs-OST0000_UUID
                        30720       -       0       -       -       -       -       -
      Total allocated inode limit: 0, total allocated block limit: 0
      bspace, act:30720, exp:10240
       conf-sanity test_32b: @@@@@@ FAIL: verify quota failed
      

      Maloo report: https://testing.hpdd.intel.com/test_sets/3acf93b6-9bb5-11e5-9930-5254006e85c2

      The quota verification failure also occurred with disk2_7-zfs.tar.bz2:
      https://testing.hpdd.intel.com/test_sets/cf518162-9b78-11e5-b907-5254006e85c2
      https://testing.hpdd.intel.com/test_sets/409ef834-9b76-11e5-b7e5-5254006e85c2

      Attachments

        Issue Links

          Activity

            [LU-7522] conf-sanity test_32b: FAIL: verify quota failed
            yujian Jian Yu added a comment -

            While generating the disk image, after adding "sync" before getting the quota data, disk quotas for user quota_usr became:

            Disk quotas for user 60000 (uid 60000):
                 Filesystem  kbytes   quota   limit   grace   files   quota   limit   grace
                 /mnt/t32fs   30724       0   40960       -       3       0       4       -
            t32fs-MDT0000_UUID
                                  0       -       0       -       1       -       0       -
            t32fs-MDT0001_UUID
                                  0       -       0       -       2       -       0       -
            t32fs-OST0000_UUID
                              30724       -       0       -       -       -       -       -
            Total allocated inode limit: 0, total allocated block limit: 0
            

            I'm fixing test_32newtarball() in http://review.whamcloud.com/16663. Let's close this ticket as a duplicate of LU-7192.

            yujian Jian Yu added a comment - While generating the disk image, after adding "sync" before getting the quota data, disk quotas for user quota_usr became: Disk quotas for user 60000 (uid 60000): Filesystem kbytes quota limit grace files quota limit grace /mnt/t32fs 30724 0 40960 - 3 0 4 - t32fs-MDT0000_UUID 0 - 0 - 1 - 0 - t32fs-MDT0001_UUID 0 - 0 - 2 - 0 - t32fs-OST0000_UUID 30724 - 0 - - - - - Total allocated inode limit: 0, total allocated block limit: 0 I'm fixing test_32newtarball() in http://review.whamcloud.com/16663 . Let's close this ticket as a duplicate of LU-7192 .

            The original kbytes 30708 is less than actual size 30720, probably this value is obtained before all dirty flush back? Could you post the patch which fixing test_32newtarball()?

            niu Niu Yawei (Inactive) added a comment - The original kbytes 30708 is less than actual size 30720, probably this value is obtained before all dirty flush back? Could you post the patch which fixing test_32newtarball()?
            yujian Jian Yu added a comment -

            You're right, Niu.

            There is a defect in test_32newtarball() with MDSCOUNT=2. After gathering the quota data, t32_qf_old was copied to remote_dir and striped_dir_old directories separately. So, there are 3 t32_qf_old files with user quota_usr. I fixed that defect and generated the disk image again (please refer to the attached disk2_7-ldiskfs.tar.bz2).

            However, before upgrading:

            Disk quotas for user 60000 (uid 60000):
                 Filesystem  kbytes   quota   limit   grace   files   quota   limit   grace
                 /mnt/t32fs   30708       0   40960       -       3       0       4       -
            t32fs-MDT0000_UUID
                                  0       -       0       -       1       -       0       -
            t32fs-MDT0001_UUID
                                  0       -       0       -       2       -       0       -
            t32fs-OST0000_UUID
                              30708       -       0       -       -       -       -       -
            Total allocated inode limit: 0, total allocated block limit: 0
            

            After upgrading:

            Disk quotas for user 60000 (uid 60000):
                 Filesystem  kbytes   quota   limit   grace   files   quota   limit   grace
            /tmp/t32/mnt/lustre
                              30724       0   40960       -       3       0       4       -
            t32fs-MDT0000_UUID
                                  0       -       0       -       1       -       0       -
            t32fs-MDT0001_UUID
                                  0       -       0       -       2       -       0       -
            t32fs-OST0000_UUID
                              30724       -       0       -       -       -       -       -
            Total allocated inode limit: 0, total allocated block limit: 0
            
            bspace, act:30724, exp:30708
             conf-sanity test_32b: @@@@@@ FAIL: verify quota failed
            

            "ls -lR /tmp/t32/mnt/lustre | grep quota_usr" showed that:

            -rw-r--r--  1 quota_usr quota_usr 10485760 Dec  9 07:41 t32_qf_old
            -rw-r--r-- 1 quota_usr quota_usr 10485760 Dec  9 07:41 t32_qf_old
            -rw-r--r-- 1 quota_usr quota_usr 10485760 Dec  9 07:41 t32_qf_old
            

            The kbytes values didn't match.

            yujian Jian Yu added a comment - You're right, Niu. There is a defect in test_32newtarball() with MDSCOUNT=2. After gathering the quota data, t32_qf_old was copied to remote_dir and striped_dir_old directories separately. So, there are 3 t32_qf_old files with user quota_usr. I fixed that defect and generated the disk image again (please refer to the attached disk2_7-ldiskfs.tar.bz2). However, before upgrading: Disk quotas for user 60000 (uid 60000): Filesystem kbytes quota limit grace files quota limit grace /mnt/t32fs 30708 0 40960 - 3 0 4 - t32fs-MDT0000_UUID 0 - 0 - 1 - 0 - t32fs-MDT0001_UUID 0 - 0 - 2 - 0 - t32fs-OST0000_UUID 30708 - 0 - - - - - Total allocated inode limit: 0, total allocated block limit: 0 After upgrading: Disk quotas for user 60000 (uid 60000): Filesystem kbytes quota limit grace files quota limit grace /tmp/t32/mnt/lustre 30724 0 40960 - 3 0 4 - t32fs-MDT0000_UUID 0 - 0 - 1 - 0 - t32fs-MDT0001_UUID 0 - 0 - 2 - 0 - t32fs-OST0000_UUID 30724 - 0 - - - - - Total allocated inode limit: 0, total allocated block limit: 0 bspace, act:30724, exp:30708 conf-sanity test_32b: @@@@@@ FAIL: verify quota failed "ls -lR /tmp/t32/mnt/lustre | grep quota_usr" showed that: -rw-r--r-- 1 quota_usr quota_usr 10485760 Dec 9 07:41 t32_qf_old -rw-r--r-- 1 quota_usr quota_usr 10485760 Dec 9 07:41 t32_qf_old -rw-r--r-- 1 quota_usr quota_usr 10485760 Dec 9 07:41 t32_qf_old The kbytes values didn't match.

            I checked the original image from http://review.whamcloud.com/#/c/16663/ , it does have 2 more quota_usr files on mdt1 and two more quota_usr objects on ost, looks the image is incorrect in first place.

            The objects on ost:

            /mnt/ost1/O/200000400/d21/55
            /mnt/ost1/O/200000400/d10/1ca
            /mnt/ost1/O/0/d21/53
            

            They are all 10M size.

            The files on mdt1:

            /mnt/mds1/REMOTE_PARENT_DIR/0x280000400:0x319:0x0/[0x280000401:0x1:0x0]:0/t32_qf_old
            /mnt/mds1/REMOTE_PARENT_DIR/0x280000400:0x1:0x0/t32_qf_old
            
            niu Niu Yawei (Inactive) added a comment - I checked the original image from http://review.whamcloud.com/#/c/16663/ , it does have 2 more quota_usr files on mdt1 and two more quota_usr objects on ost, looks the image is incorrect in first place. The objects on ost: /mnt/ost1/O/200000400/d21/55 /mnt/ost1/O/200000400/d10/1ca /mnt/ost1/O/0/d21/53 They are all 10M size. The files on mdt1: /mnt/mds1/REMOTE_PARENT_DIR/0x280000400:0x319:0x0/[0x280000401:0x1:0x0]:0/t32_qf_old /mnt/mds1/REMOTE_PARENT_DIR/0x280000400:0x1:0x0/t32_qf_old
            yujian Jian Yu added a comment -

            Hi Niu,

            After upgrading, on MDT0000:

            # mount -t ldiskfs -o loop /tmp/t32/mdt /tmp/t32/mnt/mdt
            # cd /tmp/t32/mnt/mdt
            # ls -lR | grep quota_usr
            -rw-r--r-- 1 quota_usr quota_usr    0 Dec  8 02:25 t32_qf_old
            

            On MDT0001:

            # mount -t ldiskfs -o loop /tmp/t32/mdt2 /tmp/t32/mnt/mdt1
            # cd /tmp/t32/mnt/mdt1
            # ls -lR | grep quota_usr
            -rw-r--r-- 1 quota_usr quota_usr    0 Dec  8 02:25 t32_qf_old
            -rw-r--r-- 1 quota_usr quota_usr    0 Dec  8 02:25 t32_qf_old
            

            So, there are two more t32_qf_old files on MDT0001 after upgrading.

            yujian Jian Yu added a comment - Hi Niu, After upgrading, on MDT0000: # mount -t ldiskfs -o loop /tmp/t32/mdt /tmp/t32/mnt/mdt # cd /tmp/t32/mnt/mdt # ls -lR | grep quota_usr -rw-r--r-- 1 quota_usr quota_usr 0 Dec 8 02:25 t32_qf_old On MDT0001: # mount -t ldiskfs -o loop /tmp/t32/mdt2 /tmp/t32/mnt/mdt1 # cd /tmp/t32/mnt/mdt1 # ls -lR | grep quota_usr -rw-r--r-- 1 quota_usr quota_usr 0 Dec 8 02:25 t32_qf_old -rw-r--r-- 1 quota_usr quota_usr 0 Dec 8 02:25 t32_qf_old So, there are two more t32_qf_old files on MDT0001 after upgrading.
            niu Niu Yawei (Inactive) added a comment - - edited

            After upgrading, looks Lustre generated two files for quota_usr on MDT1 automatically.

            Before upgrading:

            t32fs-MDT0001_UUID
                                  0       -       0       -       0       -       0       -
            

            After upgrading:

            t32fs-MDT0001_UUID
                                  0       -       0       -       2       -       0       -
            

            Could you find out which files were generated? (mount the MDT1 as ldiskfs, then find the files owned by quota_usr) Thanks.

            niu Niu Yawei (Inactive) added a comment - - edited After upgrading, looks Lustre generated two files for quota_usr on MDT1 automatically. Before upgrading: t32fs-MDT0001_UUID 0 - 0 - 0 - 0 - After upgrading: t32fs-MDT0001_UUID 0 - 0 - 2 - 0 - Could you find out which files were generated? (mount the MDT1 as ldiskfs, then find the files owned by quota_usr) Thanks.
            yujian Jian Yu added a comment -

            The same tests passed against disk2_4-*.tar.bz2.

            yujian Jian Yu added a comment - The same tests passed against disk2_4-*.tar.bz2.
            pjones Peter Jones added a comment -

            NIu

            Could you please look into this failure?

            Thanks

            Peter

            pjones Peter Jones added a comment - NIu Could you please look into this failure? Thanks Peter

            People

              niu Niu Yawei (Inactive)
              yujian Jian Yu
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: