Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

run-zts test procfs/pool_state failed with uncorrectable I/O failure #15364

Merged
merged 1 commit into from
Oct 20, 2023

Conversation

vaibhav-delphix
Copy link
Contributor

@vaibhav-delphix vaibhav-delphix commented Oct 6, 2023

This change is regarding procfs/pool_state zts test.

Motivation and Context

procfs/pool_state functional test fails with Uncorrectable I/O Failure.

SUCCESS: zpool online testpool-4aa935ff-0845 sdb
SUCCESS: zpool clear testpool-4aa935ff-0845
SUCCESS: modprobe scsi_debug dev_size_mb=256 add_host=1 num_tgts=1 max_luns=1 sector_size=512 physblk_exp=0
SUCCESS: [ ! -e /dev/kstat-state-realdisk ]
SUCCESS: zpool create testpool2 /dev/kstat-state-realdisk
SUCCESS: [ ! -e /var/tmp/kstat-state-realdisk.gz ]
SUCCESS: rm /dev/kstat-state-realdisk
SUCCESS: eval echo 'offline' > /sys/block/sde/device/state
SUCCESS: eval echo '1' > /sys/block/sde/device/delete
NOTE: Checking SUSPENDED = UNAVAIL = SUSPENDED = SUSPENDED
ERROR: check_all testpool2 SUSPENDED exited 1
~~ snip ~~
[ 7344.490274] WARNING: Pool 'testpool2' has encountered an uncorrectable I/O failure and has been suspended.

Test creates a pool using single scsi_debug disk. And test tries to simulate the zpool SUSPENDED state. To achieve this it removed the scsi_debug disks and initiate the zpool scrub in background. It sleep for 3 seconds and make call to check the status of zpool at three difference places.

state1=$(zpool` status $pool | awk '/state: /{print $2}');
state2=$(zpool list -H -o health $pool)
state3=$(</proc/spl/kstat/zfs/$pool/state)

state1 commands gets stuck for 180 seconds and later we get the status in UNAVAIL state.

Once we trigger the zpool scrub, all zpool command gets stuck for 180 seconds. Post 180 seconds zpool commands gets start executing however few more seconds(roughly 10s) it take to update the status.

Description

Once we trigger the zpool scrub, all zpool/zfs command gets stuck for 180 seconds. Post 180 seconds zpool/zfs commands gets start executing however few more seconds(10s) it take to update the status. hence sleeping for 200 seconds so that we get the correct status.

How Has This Been Tested?

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Library ABI change (libzfs, libzfs_core, libnvpair, libuutil and libzfsbootenv)
  • Documentation (a change to man pages or other documentation)

Checklist:

@behlendorf behlendorf added Component: Test Suite Indicates an issue with the test framework or a test case Status: Code Review Needed Ready for review and testing labels Oct 6, 2023
@behlendorf behlendorf merged commit de7b1ae into openzfs:master Oct 20, 2023
22 of 26 checks passed
@behlendorf behlendorf added Status: Accepted Ready to integrate (reviewed, tested) and removed Status: Code Review Needed Ready for review and testing labels Oct 20, 2023
ixhamza pushed a commit to truenas/zfs that referenced this pull request Nov 20, 2023
Once we trigger the zpool scrub, all zpool/zfs command gets stuck for 
180 seconds. Post 180 seconds zpool/zfs commands gets start executing 
however few more seconds(10s) it take to update the status. hence 
sleeping for 200 seconds so that we get the correct status.

Reviewed-by: Tony Hutter <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: vaibhav.bhanawat <[email protected]>
Closes openzfs#15364
lundman pushed a commit to openzfsonwindows/openzfs that referenced this pull request Dec 12, 2023
Once we trigger the zpool scrub, all zpool/zfs command gets stuck for 
180 seconds. Post 180 seconds zpool/zfs commands gets start executing 
however few more seconds(10s) it take to update the status. hence 
sleeping for 200 seconds so that we get the correct status.

Reviewed-by: Tony Hutter <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: vaibhav.bhanawat <[email protected]>
Closes openzfs#15364
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Test Suite Indicates an issue with the test framework or a test case Status: Accepted Ready to integrate (reviewed, tested)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants