123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- # Process this file with autom4te to create testsuite. -*- Autotest -*-
- # Test suite for GNU tar.
- # Copyright 2009-2023 Free Software Foundation, Inc.
- # This file is part of GNU tar.
- # GNU tar is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 3 of the License, or
- # (at your option) any later version.
- # GNU tar is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- # You should have received a copy of the GNU General Public License
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
- # Description: when a file in a deep directory disappeared during creation
- # of incremental dump, tar v. <1.23 would exit with TAREXIT_FAILURE (2).
- # However, such events are quite common and don't necessarily constitute
- # an error. Exiting with code 2 in such cases makes it impossible to
- # distinguish serious errors from benign ones.
- #
- # Starting from tar 1.22.90, tar exits with TAREXIT_DIFFERS (1)
- # instead.
- #
- # Reported by: Solar Designer <[email protected]>
- #
- # References: <[email protected]>
- # http://lists.gnu.org/archive/html/bug-tar/2009-03/msg00000.html
- #
- AT_SETUP([file removed as we read it])
- AT_KEYWORDS([create incremental listed filechange filerem filerem01])
- AT_TAR_CHECK([
- mkdir dir
- mkdir dir/sub
- genfile --file dir/file1
- genfile --file dir/sub/file2
- genfile --run --checkpoint=3 --unlink dir/file1 -- \
- tar --blocking-factor=1 -c -f archive.tar \
- --listed-incremental db -v dir >/dev/null
- ],
- [1],
- [ignore],
- [tar: dir: Directory is new
- tar: dir/sub: Directory is new
- tar: dir/file1: File removed before we read it
- ],[],[],[gnu, posix])
- # Timing information:
- #
- # For -Hgnu the above command line takes about 8 seconds to execute and
- # produces:
- #
- # tar: dir: Directory is new
- # tar: dir/sub: Directory is new
- # dir/
- # tar: Write checkpoint 1
- # tar: Write checkpoint 2
- # dir/sub/
- # tar: Write checkpoint 3
- # tar: Write checkpoint 4
- # dir/file1
- # tar: Write checkpoint 5
- # dir/sub/file2
- # tar: Write checkpoint 6
- # tar: Write checkpoint 7
- # tar: Write checkpoint 8
- #
- # For -Hposix the above command line takes about 14 seconds to execute and
- # produces:
- #
- # ./tar: dir: Directory is new
- # ./tar: dir/sub: Directory is new
- # dir/
- # ./tar: Write checkpoint 1
- # ./tar: Write checkpoint 2
- # ./tar: Write checkpoint 3
- # dir/sub/
- # ./tar: Write checkpoint 4
- # ./tar: Write checkpoint 5
- # ./tar: Write checkpoint 6
- # dir/file1
- # ./tar: Write checkpoint 7
- # ./tar: Write checkpoint 8
- # ./tar: Write checkpoint 9
- # dir/sub/file2
- # ./tar: Write checkpoint 10
- # ./tar: Write checkpoint 11
- # ./tar: Write checkpoint 12
- # ./tar: Write checkpoint 13
- # ./tar: Write checkpoint 14
- AT_CLEANUP
|