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

lctl set_param -P not applied to subsequently added devices

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • Lustre 2.10.0, Lustre 2.14.0
    • None
    • 3
    • 9223372036854775807

    Description

      If I set an osc.* parameter using lctl set_param -P and then add an OST to the FS then the osc parameter corresponding to the new target is not configured on already mounted clients:

      m:~# llmount.sh
      ...
      m:~# lctl get_param osc.*.max_dirty_mb
      osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=32
      osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=32
      m:~# lctl set_param -P osc.*.max_dirty_mb=33
      m:~# sleep 60 && lctl get_param osc.*.max_dirty_mb
      osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=33
      osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=33
      m:~# dd if=/dev/zero of=/tmp/lustre-ost3 bs=1K count=400000
      400000+0 records in
      400000+0 records out
      409600000 bytes (410 MB) copied, 1.58115 s, 259 MB/s
      m:~# mkfs.lustre --fsname=lustre --mgsnode=m@tcp --ost --index=2 /tmp/lustre-ost3
      
         Permanent disk data:
      Target:     lustre:OST0002
      Index:      2
      Lustre FS:  lustre
      Mount type: ldiskfs
      Flags:      0x62
                    (OST first_time update )
      Persistent mount opts: ,errors=remount-ro
      Parameters: mgsnode=192.168.122.121@tcp
      
      checking for existing Lustre data: not found
      formatting backing filesystem ldiskfs on /dev/loop3
                 target name   lustre:OST0002
                 4k blocks     0
                 options        -I 512 -q -O extents,uninit_bg,dir_nlink,quota,huge_file,flex_b\
      g -G 256 -E lazy_journal_init -F
      mkfs_cmd = mke2fs -j -b 4096 -L lustre:OST0002  -I 512 -q -O extents,uninit_bg,dir_nlink,\
      quota,huge_file,flex_bg -G 256 -E lazy_journal_init -F /dev/loop3
      Writing CONFIGS/mountdata
      m:~# mkdir -p /mnt/ost3
      m:~# mount /tmp/lustre-ost3 /mnt/ost3 -t lustre -o loop
      m:~# sleep 60 && lctl get_param osc.*.max_dirty_mb
      osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=33
      osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=33
      osc.lustre-OST0002-osc-ffff88000cbe9000.max_dirty_mb=32
      m:~# umount /mnt/lustre
      m:~# mount m@tcp:/lustre /mnt/lustre -t lustre -o user_xattr,flock
      m:~# lctl get_param osc.*.max_dirty_mb
      osc.lustre-OST0000-osc-ffff88001617c800.max_dirty_mb=33
      osc.lustre-OST0001-osc-ffff88001617c800.max_dirty_mb=33
      osc.lustre-OST0002-osc-ffff88001617c800.max_dirty_mb=33
      

      Note that clients which are mounted after the target was added will see the new value.

      Attachments

        Activity

          People

            wc-triage WC Triage
            jhammond John Hammond
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: