Bug 5297 - itemize and merge tests fail
Summary: itemize and merge tests fail
Status: CLOSED FIXED
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.0.0
Hardware: Other Solaris
: P3 normal (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-01 18:12 UTC by Bob Friesenhahn
Modified: 2013-02-18 13:30 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bob Friesenhahn 2008-03-01 18:12:18 UTC
When doing 'make check' as root, the merge test fails on Solaris 10 x86 and SPARC (as well as Mac OS-X Leopard):


rsync_bin=`pwd`/rsync /home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh
============================================================
/home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh running in /scratch/bfriesen/build/rsync-3.0.0
    rsync_bin=/scratch/bfriesen/build/rsync-3.0.0/rsync
    srcdir=/home/bfriesen/src/network/rsync/rsync-3.0.0
    testuser=root
    os=SunOS freddy 5.10 Generic_127112-10 i86pc i386 i86pc
    preserve_scratch=no
/home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh: setacl: not found
    scratchbase=/scratch/bfriesen/build/rsync-3.0.0/testtmp
PASS    00-hello
SKIP    acls (I don't know how to use setfacl or chmod for ACLs)
PASS    backup
PASS    batch-mode
PASS    chgrp
PASS    chmod-option
PASS    chmod-temp-dir
PASS    chmod
SKIP    chown-fake (Rsync needs xattrs for fake device tests)
PASS    chown
PASS    compare-dest
PASS    daemon-gzip-download
PASS    daemon-gzip-upload
PASS    daemon
SKIP    default-acls (I don't know how to use your setfacl command)
PASS    delete
SKIP    devices-fake (Rsync needs xattrs for fake device tests)
PASS    devices
SKIP    dir-sgid (The directory setgid bit vanished!)
PASS    duplicates
PASS    exclude
PASS    executability
PASS    fuzzy
PASS    hands
PASS    hardlinks
----- itemize log follows
Testing for symlinks using 'test -h'
        makepath /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/foo
/scratch
/scratch/bfriesen
/scratch/bfriesen/build
/scratch/bfriesen/build/rsync-3.0.0
/scratch/bfriesen/build/rsync-3.0.0/testtmp
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/foo
        makepath /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar/baz
/scratch
/scratch/bfriesen
/scratch/bfriesen/build
/scratch/bfriesen/build/rsync-3.0.0
/scratch/bfriesen/build/rsync-3.0.0/testtmp
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar
/scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/from/bar/baz
cd+++++++++ ./
cd+++++++++ bar/
cd+++++++++ bar/baz/
>f+++++++++ bar/baz/rsync
cd+++++++++ foo/
>f+++++++++ foo/config1
>f+++++++++ foo/config2
>f+++++++++ foo/extra
cL+++++++++ foo/sym -> ../bar/baz/rsync
No differences encountered
>f..T...... bar/baz/rsync
>f..T...... foo/config1
>f.sTp..... foo/config2
hf..T...... foo/extra => foo/config1
No differences encountered
.f..tp..... bar/baz/rsync
.d..t...... foo/
.f..t...... foo/config1
>fcstp..... foo/config2
cL..T...... foo/sym -> ../bar/baz/rsync
No differences encountered
sending incremental file list
delta-transmission disabled for local transfer or --whole-file
bar/baz/rsync is uptodate
foo/config1 is uptodate
foo/config2
foo/extra is uptodate
foo/sym is uptodate
total: matches=0  hash_hits=0  false_alarms=0 data=29047

sent 29289 bytes  received 59 bytes  58696.00 bytes/sec
total size is 117396  speedup is 4.00
No differences encountered
sending incremental file list
delta-transmission disabled for local transfer or --whole-file
.d          ./
.d          bar/
.d          bar/baz/
.f...p..... bar/baz/rsync
.d          foo/
.f          foo/config1
>f..t...... foo/config2
hf          foo/extra
.L          foo/sym -> ../bar/baz/rsync
total: matches=0  hash_hits=0  false_alarms=0 data=29047

sent 29289 bytes  received 59 bytes  58696.00 bytes/sec
total size is 117396  speedup is 4.00
No differences encountered
sending incremental file list
foo/config2

sent 29267 bytes  received 37 bytes  58608.00 bytes/sec
total size is 117396  speedup is 4.01
No differences encountered
.f...p..... foo/config1
>f..t...... foo/config2
No differences encountered
sending incremental file list
created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2
delta-transmission disabled for local transfer or --whole-file
cd          ./
cd          bar/
cd          bar/baz/
cf          bar/baz/rsync
cd          foo/
cf          foo/config1
cf          foo/config2
hf          foo/extra => foo/config1
cL          foo/sym -> ../bar/baz/rsync
total: matches=0  hash_hits=0  false_alarms=0 data=0

sent 213 bytes  received 54 bytes  534.00 bytes/sec
total size is 117396  speedup is 439.69
No differences encountered
hf          foo/extra => foo/config1
No differences encountered
sending incremental file list
created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2
delta-transmission disabled for local transfer or --whole-file
./ is uptodate
bar/ is uptodate
bar/baz/ is uptodate
bar/baz/rsync is uptodate
foo/ is uptodate
foo/config1 is uptodate
foo/config2 is uptodate
foo/extra => foo/config1
foo/sym is uptodate
total: matches=0  hash_hits=0  false_alarms=0 data=0

sent 198 bytes  received 39 bytes  474.00 bytes/sec
total size is 117396  speedup is 495.34
No differences encountered
sending incremental file list
created directory /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/to2
delta-transmission disabled for local transfer or --whole-file
cd          ./
cd          bar/
cd          bar/baz/
hf          bar/baz/rsync
cd          foo/
hf          foo/config1
hf          foo/config2
hf          foo/extra => foo/config1
hL          foo/sym -> ../bar/baz/rsync
total: matches=0  hash_hits=0  false_alarms=0 data=0

sent 217 bytes  received 58 bytes  550.00 bytes/sec
total size is 117396  speedup is 426.89
--- /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/rsync.chk       Sat Mar  1 18:06:37 2008
+++ /scratch/bfriesen/build/rsync-3.0.0/testtmp/itemize/rsync.out       Sat Mar  1 18:06:37 2008
@@ -6,4 +6,4 @@
 hf          foo/config1
 hf          foo/config2
 hf          foo/extra => foo/config1
-cL          foo/sym -> ../bar/baz/rsync
+hL          foo/sym -> ../bar/baz/rsync
test 11 failed
----- itemize log ends
FAIL    itemize
PASS    longdir
----- merge log follows
Testing for symlinks using 'test -h'
sending incremental file list

sent 61 bytes  received 13 bytes  148.00 bytes/sec
total size is 0  speedup is 0.00
sending incremental file list

sent 50 bytes  received 13 bytes  126.00 bytes/sec
total size is 0  speedup is 0.00
sending incremental file list

sent 61 bytes  received 13 bytes  148.00 bytes/sec
total size is 0  speedup is 0.00
sending incremental file list

sent 61 bytes  received 14 bytes  150.00 bytes/sec
total size is 0  speedup is 0.00
Running: "/scratch/bfriesen/build/rsync-3.0.0/rsync  -avv deep/arg-test shallow from1/ from2/ from3/ to/"
sending incremental file list
removing duplicate name . from file list (2)
removing duplicate name . from file list (3)
removing duplicate name one from file list (9)
removing duplicate name one from file list (10)
removing duplicate name dir-and-not-dir from file list (5)
removing duplicate name sub1 from file list (17)
created directory to
delta-transmission disabled for local transfer or --whole-file
./
arg-test
five
four
one
shallow
six
three
two
dir-and-not-dir/
dir-and-not-dir/inside
removing duplicate name sub1/uno from file list (25)
sub1/
sub1/dos
sub1/tres
sub1/uno
sub2/
sub2/subby
total: matches=0  hash_hits=0  false_alarms=0 data=72

sent 975 bytes  received 274 bytes  2498.00 bytes/sec
total size is 93  speedup is 0.07
-------------
check how the directory listings compare with diff:

--- /scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/ls-from   Sat Mar  1 18:06:39 2008
+++ /scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/ls-to     Sat Mar  1 18:06:39 2008
@@ -1,4 +1,4 @@
-/scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/chk
+/scratch/bfriesen/build/rsync-3.0.0/testtmp/merge/to
 drwxr-xr-x            0      0.1           5 2008-03-02 00:06:37 .
 -rw-r--r--            9      0.1           1 2008-03-02 00:06:37 ./arg-test
 drwxr-xr-x            0      0.1           2 2008-03-02 00:06:37 ./dir-and-not-dir
-------------
check how the files compare with diff:

Common subdirectories: chk/dir-and-not-dir and to/dir-and-not-dir
Common subdirectories: chk/sub1 and to/sub1
Common subdirectories: chk/sub2 and to/sub2
-------------
----- merge log ends
FAIL    merge
PASS    relative
PASS    ssh-basic
PASS    symlink-ignore
PASS    trimslash
PASS    unsafe-byname
PASS    unsafe-links
PASS    wildmatch
SKIP    xattrs (Rsync is configured without xattr support)
------------------------------------------------------------
----- overall results:
      28 passed
      2 failed
      6 skipped
------------------------------------------------------------
overall result is 2
gmake: *** [check] Error 2
Comment 1 Bob Friesenhahn 2008-03-01 18:35:55 UTC
Notice this:

/home/bfriesen/src/network/rsync/rsync-3.0.0/runtests.sh: setacl: not found
SKIP    acls (I don't know how to use setfacl or chmod for ACLs)

It seems that runtests.sh used 'setacl' rather than 'setfacl'.
Comment 2 Wayne Davison 2008-03-04 23:22:13 UTC
Test 11 chooses to anticipate either a hard-linked symlink ("hL") or a locally-copied symlink ("cL") depending on if it thinks that symlinks can be hard-linked or not.  The test using "ln" on a dangling symlink should indicate if that is possible.  It looks like that ln test reports the wrong result, so the itemize test is expecting "cL" when rsync returns "hL".  Perhaps I should change that test to grep for CAN_HARDLINK_SYMLINK in the config.h file.

As for the merge test, it appears that you have "cd reldir" output a path, and that output is causing the diff to fail.  I'll code around such a possibility.
Comment 3 Wayne Davison 2008-03-04 23:50:00 UTC
The git repository has this fixed now.