mirror of
				https://git.proxmox.com/git/mirror_zfs.git
				synced 2025-10-26 18:05:04 +03:00 
			
		
		
		
	ZTS: send-c_volume is flaky
We use block_device_wait to wait for the zvol block device to actually appear, and we log the result of the dd calls by using an intermediate file. Reviewed-by: George Melikov <mail@gmelikov.ru> Reviewed-by: John Wren Kennedy <john.kennedy@delphix.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes #14767
This commit is contained in:
		
							parent
							
								
									e2a96aa4eb
								
							
						
					
					
						commit
						e1b3ab5f51
					
				| @ -29,6 +29,7 @@ | |||||||
| 
 | 
 | ||||||
| function cleanup | function cleanup | ||||||
| { | { | ||||||
|  | 	rm $BACKDIR/copy | ||||||
| 	log_must_busy zfs destroy -r $vol | 	log_must_busy zfs destroy -r $vol | ||||||
| 	cleanup_pool $POOL2 | 	cleanup_pool $POOL2 | ||||||
| } | } | ||||||
| @ -60,7 +61,9 @@ log_must eval "zfs recv -d $POOL2 <$BACKDIR/full" | |||||||
| 
 | 
 | ||||||
| verify_stream_size $BACKDIR/full $vol | verify_stream_size $BACKDIR/full $vol | ||||||
| verify_stream_size $BACKDIR/full $vol2 | verify_stream_size $BACKDIR/full $vol2 | ||||||
| md5=$(dd if=$voldev2 bs=1024k count=$megs 2>/dev/null | md5digest) | block_device_wait $voldev2 | ||||||
|  | log_must dd if=$voldev2 of=$BACKDIR/copy bs=1024k count=$megs | ||||||
|  | md5=$(md5digest $BACKDIR/copy) | ||||||
| [[ $md5 = $md5_1 ]] || log_fail "md5 mismatch: $md5 != $md5_1" | [[ $md5 = $md5_1 ]] || log_fail "md5 mismatch: $md5 != $md5_1" | ||||||
| 
 | 
 | ||||||
| # Repeat, for an incremental send | # Repeat, for an incremental send | ||||||
| @ -72,7 +75,9 @@ log_must eval "zfs recv -d $POOL2 <$BACKDIR/inc" | |||||||
| 
 | 
 | ||||||
| verify_stream_size $BACKDIR/inc $vol 90 $vol@snap | verify_stream_size $BACKDIR/inc $vol 90 $vol@snap | ||||||
| verify_stream_size $BACKDIR/inc $vol2 90 $vol2@snap | verify_stream_size $BACKDIR/inc $vol2 90 $vol2@snap | ||||||
| md5=$(dd skip=$megs if=$voldev2 bs=1024k count=$megs 2>/dev/null | md5digest) | block_device_wait $voldev2 | ||||||
|  | log_must dd skip=$megs if=$voldev2 of=$BACKDIR/copy bs=1024k count=$megs | ||||||
|  | md5=$(md5digest $BACKDIR/copy) | ||||||
| [[ $md5 = $md5_2 ]] || log_fail "md5 mismatch: $md5 != $md5_2" | [[ $md5 = $md5_2 ]] || log_fail "md5 mismatch: $md5 != $md5_2" | ||||||
| 
 | 
 | ||||||
| log_pass "Verify compressed send works with volumes" | log_pass "Verify compressed send works with volumes" | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Paul Dagnelie
						Paul Dagnelie