zfs-check broken pipe handling tests
This commit is contained in:
		| @ -2,7 +2,7 @@ import time | ||||
|  | ||||
| import argparse | ||||
| from signal import signal, SIGPIPE | ||||
| from .util import output_redir | ||||
| from .util import output_redir, sigpipe_handler | ||||
|  | ||||
| from .ZfsAuto import ZfsAuto | ||||
|  | ||||
| @ -492,7 +492,7 @@ class ZfsAutobackup(ZfsAuto): | ||||
| def cli(): | ||||
|     import sys | ||||
|  | ||||
|     signal(SIGPIPE, output_redir) | ||||
|     signal(SIGPIPE, sigpipe_handler) | ||||
|  | ||||
|     sys.exit(ZfsAutobackup(sys.argv[1:], False).run()) | ||||
|  | ||||
|  | ||||
| @ -1,6 +1,6 @@ | ||||
| # from util import activate_volume_snapshot, create_mountpoints, cleanup_mountpoint | ||||
| from signal import signal, SIGPIPE | ||||
| from .util import output_redir | ||||
| from .util import output_redir, sigpipe_handler | ||||
|  | ||||
| from .ZfsAuto import ZfsAuto | ||||
| from .ZfsNode import ZfsNode | ||||
| @ -305,7 +305,7 @@ class ZfsAutoverify(ZfsAuto): | ||||
| def cli(): | ||||
|     import sys | ||||
|  | ||||
|     signal(SIGPIPE, output_redir) | ||||
|     signal(SIGPIPE, sigpipe_handler) | ||||
|  | ||||
|     sys.exit(ZfsAutoverify(sys.argv[1:], False).run()) | ||||
|  | ||||
|  | ||||
| @ -147,8 +147,7 @@ class ZfsCheck(CliBase): | ||||
|  | ||||
| def cli(): | ||||
|     import sys | ||||
|  | ||||
|     signal(SIGPIPE, output_redir) | ||||
|     signal(SIGPIPE, sigpipe_handler) | ||||
|  | ||||
|     sys.exit(ZfsCheck(sys.argv[1:], False).run()) | ||||
|  | ||||
|  | ||||
| @ -21,6 +21,7 @@ import sys | ||||
| import time | ||||
|  | ||||
|  | ||||
|  | ||||
| def block_hash(fname, count=10000, bs=4096): | ||||
|     """This function was created to checksum huge files and blockdevices (TB's) | ||||
|     Instead of one sha1sum of the whole file, it generates sha1susms of chunks of the file. | ||||
| @ -100,3 +101,6 @@ def output_redir(): | ||||
|     os.dup2(devnull, sys.stdout.fileno()) | ||||
|     os.dup2(devnull, sys.stderr.fileno()) | ||||
|  | ||||
| def sigpipe_handler(sig, stack): | ||||
|     #redir output so we dont get more SIGPIPES during cleanup. (which my try to write to stdout) | ||||
|     output_redir() | ||||
|  | ||||
		Reference in New Issue
	
	Block a user