ONLY=${ONLY:-"$*"}
ALWAYS_EXCEPT="$SANITY_PCC_EXCEPT "
-# bug number for skipped test: EX-3763
-ALWAYS_EXCEPT+=" 44 "
+# bug number for skipped test: EX-3763 LU-15969
+ALWAYS_EXCEPT+=" 44 39"
# UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT!
ENABLE_PROJECT_QUOTAS=${ENABLE_PROJECT_QUOTAS:-true}
# detached automatically.
do_facet $SINGLEAGT $LCTL \
set_param ldlm.namespaces.*mdc*.lru_size=clear
+ check_lpcc_state $file "none" $SINGLEAGT "$RUNAS"
+ do_facet $SINGLEAGT $RUNAS $MULTIOP $file oc ||
+ error "failed to open $file"
check_lpcc_state $file "readwrite" $SINGLEAGT "$RUNAS"
# Detach the file but keep the cache , as the file layout generation
# is not changed, so the file is still valid cached in PCC, and can
# be reused from PCC cache directly.
do_facet $SINGLEAGT $RUNAS $LFS pcc detach -k $file ||
error "PCC detach $file failed"
+ check_lpcc_state $file "none" $SINGLEAGT "$RUNAS"
+ do_facet $SINGLEAGT $RUNAS $MULTIOP $file oc ||
+ error "failed to open $file"
check_lpcc_state $file "readwrite" $SINGLEAGT "$RUNAS"
do_facet $SINGLEAGT $RUNAS $LFS pcc detach $file ||
error "PCC detach $file failed"
# and can be reused from PCC cache directly.
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "RW-PCC detach $file failed"
+ check_lpcc_state $file "none"
+ do_facet $SINGLEAGT $MULTIOP $file oc || error "failed to open $file"
check_lpcc_state $file "readwrite"
# HSM released exists archived status
check_hsm_flags $file "0x0000000d"
# and can be reused from PCC cache directly.
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "RO-PCC detach $file failed"
+ check_lpcc_state $file "none"
+ do_facet $SINGLEAGT $MULTIOP $file oc || error "failed to open $file"
check_lpcc_state $file "readonly"
check_file_data $SINGLEAGT $file "autoattach_data"
do_facet $SINGLEAGT $LFS pcc detach $file ||
# Valid PCC cache can be reused
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "PCC detach $file failed"
- check_lpcc_state $file "readwrite"
+ check_lpcc_state $file "none"
# HSM released exists archived status
check_hsm_flags $file "0x0000000d"
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "RO-PCC detach $file failed"
+ check_lpcc_state $file "none"
+ # Reading the file will re-attach the file in readonly mode
+ do_facet $SINGLEAGT cat $file || error "cat $file failed"
check_lpcc_state $file "readonly"
do_facet $SINGLEAGT $LFS pcc detach $file ||
local hsm_root="$mntpt/$tdir"
local file=$DIR/$tfile
- setup_loopdev $SINGLEAGT $loopfile $mntpt 50
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 120
copytool setup -m "$MOUNT" -a "$HSM_ARCHIVE_NUMBER"
setup_pcc_mapping $SINGLEAGT \
"projid={100}\ rwid=$HSM_ARCHIVE_NUMBER\ pccrw=1"
rmultiop_start $agt_host $file O_c || error "multiop $file failed"
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "detach $file failed"
- check_lpcc_state $file "readwrite"
+ check_lpcc_state $file "none"
check_file_data $SINGLEAGT $file "auto_attach_multi_open"
check_lpcc_state $file "readwrite"
do_facet $SINGLEAGT $LFS pcc detach $file ||
rmultiop_start $agt_host $file O_c || error "multiop $file failed"
do_facet $SINGLEAGT $LCTL \
set_param ldlm.namespaces.*mdc*.lru_size=clear
- check_lpcc_state $file "readwrite"
+ check_lpcc_state $file "none"
check_file_data $SINGLEAGT $file "auto_attach_multi_open"
check_lpcc_state $file "readwrite"
do_facet $SINGLEAGT $LFS pcc detach $file ||
rmultiop_start $agt_host $file O_c || error "multiop $file failed"
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "detach $file failed"
- check_lpcc_state $file "readonly"
+ check_lpcc_state $file "none"
check_file_data $SINGLEAGT $file "auto_attach_multi_open"
check_lpcc_state $file "readonly"
do_facet $SINGLEAGT $LFS pcc detach $file ||
rmultiop_start $agt_host $file O_c || error "multiop $file failed"
do_facet $SINGLEAGT $LCTL \
set_param ldlm.namespaces.*mdc*.lru_size=clear
- check_lpcc_state $file "readonly"
+ check_lpcc_state $file "none"
check_file_data $SINGLEAGT $file "auto_attach_multi_open"
check_lpcc_state $file "readonly"
do_facet $SINGLEAGT $LFS pcc detach $file ||
local file=$dir/$tfile
local id=100
- setup_loopdev_project $SINGLEAGT $loopfile $mntpt 50
+ setup_loopdev_project $SINGLEAGT $loopfile $mntpt 120
do_facet $SINGLEAGT quotaon -Ppv $mntpt
do_facet $SINGLEAGT setquota -P $id 0 4096 0 0 $mntpt ||
error "setquota -P $id on $mntpt failed"
# Revoke the layout lock, the PCC-cached file will be
# detached automatically.
do_facet $SINGLEAGT $LCTL set_param ldlm.namespaces.*mdc*.lru_size=clear
+ check_lpcc_state $file "none" $SINGLEAGT "$RUNAS"
+ do_facet $SINGLEAGT $RUNAS $MULTIOP $file oc ||
+ error "failed to open $file"
check_lpcc_state $file "readwrite" $SINGLEAGT "$RUNAS"
# Detach the file but keep the cache, as the file layout generation
# is not changed, so the file is still valid cached in PCC, and can
# be reused from PCC cache directly.
do_facet $SINGLEAGT nsenter -t $PID -U -m $LFS pcc detach -k $file ||
error "PCC detach $file failed"
+ check_lpcc_state $file "none" $SINGLEAGT "$RUNAS"
+ do_facet $SINGLEAGT nsenter -t $PID -U -m $MULTIOP $file oc ||
+ error "failed to open $file"
check_lpcc_state $file "readwrite" $SINGLEAGT "$RUNAS"
do_facet $SINGLEAGT nsenter -t $PID -U -m $LFS pcc detach $file ||
error "PCC detach $file failed"
# and can be reused from PCC cache directly.
do_facet $SINGLEAGT $LFS pcc detach -k $file ||
error "RW-PCC detach $file failed"
- check_lpcc_state $file "readwrite"
# HSM released exists archived status
check_hsm_flags $file "0x0000000d"
check_file_data $SINGLEAGT $file "autoattach_data" $PID
+ check_lpcc_state $file "readwrite"
# HSM restore the PCC cached file, the layout generation
# was changed, so the file can not be auto attached.
LPCC_PURGE=${LPCC_PURGE:-$(do_facet $SINGLEAGT "which lpcc_purge")}
[[ -n "$LPCC_PURGE" ]] || skip_env "lpcc_purge not found on $SINGLEAGT"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 120
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
mkdir $DIR/$tdir
for i in {1..100}; do
file=$DIR/$tdir/$tfile.$i.dat
- do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=100K count=1 status=none ||
+ do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=1M count=1 status=none ||
error "Write $file failed"
done
LPCC_PURGE=${LPCC_PURGE:-$(do_facet $SINGLEAGT "which lpcc_purge")}
[[ -n "$LPCC_PURGE" ]] || skip_env "lpcc_purge not found on $SINGLEAGT"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 120
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
mkdir $DIR/$tdir
for i in {1..100}; do
file=$DIR/$tdir/$tfile.$i.dat
- do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=100K count=1 status=none ||
+ do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=1M count=1 status=none ||
error "Write $file failed"
done
LPCC_PURGE=${LPCC_PURGE:-$(do_facet $SINGLEAGT "which lpcc_purge")}
[[ -n "$LPCC_PURGE" ]] || skip_env "lpcc_purge not found on $SINGLEAGT"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 120
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
mkdir $DIR/$tdir
for i in {1..100}; do
file=$DIR/$tdir/$tfile.$i.dat
- do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=100K count=1 status=none ||
+ do_facet $SINGLEAGT dd if=/dev/zero of=$file bs=1M count=1 status=none ||
error "Write $file failed"
done
local file=$DIR/$tfile
local bs="1024"
- setup_loopdev client $loopfile $mntpt 10
+ setup_loopdev client $loopfile $mntpt 50
mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping client \
"projid={0}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
(( $MDS1_VERSION >= $(version_code 2.14.0.38) )) ||
skip "Need server version at least 2.14.0.38"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 50
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
(( $MDS1_VERSION >= $(version_code 2.14.0.38) )) ||
skip "Need server version at least 2.14.0.38"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 50
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
LPCC_PURGE=${LPCC_PURGE:-$(do_facet $SINGLEAGT "which lpcc_purge")}
[[ -n "$LPCC_PURGE" ]] || skip_env "lpcc_purge not found on $SINGLEAGT"
- setup_loopdev $SINGLEAGT $loopfile $mntpt 14
+ setup_loopdev $SINGLEAGT $loopfile $mntpt 120
do_facet $SINGLEAGT mkdir $hsm_root || error "mkdir $hsm_root failed"
setup_pcc_mapping $SINGLEAGT \
"fname={*.dat}\ roid=$HSM_ARCHIVE_NUMBER\ pccro=1"
for i in {1..100}; do
file=$DIR/$tdir/$tfile.$i.dat
do_facet $SINGLEAGT \
- dd if=/dev/zero of=$file bs=100K count=1 status=none ||
+ dd if=/dev/zero of=$file bs=1M count=1 status=none ||
error "Write $file failed"
done