Christopher Gorski wrote:
> Robert Milkowski wrote:
>>
>> As Joerg suggested - please check getdents() - remember to use truss
>> -v getdents so you should see all directory listings.
>>
>> I would check both getdents and open - so if it appears in getdents
>> but is not opened later on...
>>
>>
> 
> I ran the copy procedure with this:
> #truss -t open,getdents -v open,getdents -o /tmp/getdents.truss cp -pr
> /pond/photos/* /pond/copytestsame/
> 
> It seems that the same files I am missing on copy are missing in the
> getdents return value, even though I can see and read these files via bash.
> 
> -Chris

I've attached a copy of truss output from doing the copy, and from doing
  a simple "ls" on the original directory.  The getdents output for the
"ls" shows all the files, whereas the getdents output for the "cp" is
missing about 20 files.

The "cp":

stat64("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x08068468) = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:05:23 EST 2008  [ 1201669523 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
pathconf("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
20) = 2
acl("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
ACE_GETACLCNT, 0, 0x00000000) = 6
stat64("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x080419C0) = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:05:23 EST 2008  [ 1201669523 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
acl("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
ACE_GETACL, 6, 0x080ED910) = 6
stat64("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002",
0x080683D8) = 0
     d=0x02D90002 i=13930 m=0040755 l=8  u=0     g=0     sz=8
         at = Jan 30 00:09:22 EST 2008  [ 1201669762 ]
         mt = Jan 30 00:15:26 EST 2008  [ 1201670126 ]
         ct = Jan 30 00:15:26 EST 2008  [ 1201670126 ]
     bsz=131072 blks=3     fs=zfs
stat64("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x080683D8) Err#2 ENOENT
stat64("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x080683D8) Err#2 ENOENT
mkdir("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0755) = 0
stat64("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x080683D8) = 0
     d=0x02D90002 i=953   m=0040755 l=2  u=0     g=0     sz=2
         at = Jan 30 00:15:26 EST 2008  [ 1201670126 ]
         mt = Jan 30 00:15:26 EST 2008  [ 1201670126 ]
         ct = Jan 30 00:15:26 EST 2008  [ 1201670126 ]
     bsz=131072 blks=1     fs=zfs
chmod("/pond/copytestsame//unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0755) = 0
openat(AT_FDCWD,
"/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
O_RDONLY|O_NDELAY|O_LARGEFILE) = 0
fcntl(0, F_SETFD, 0x00000001)                   = 0
fstat64(0, 0x080413F0)                          = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:05:23 EST 2008  [ 1201669523 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
fstat64(0, 0x080414D0)                          = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:05:23 EST 2008  [ 1201669523 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
getdents64(0, 0xFEC9A000, 8192)                 = 8160
     ino=59135 off=1    rlen=24  "."
     ino=21193 off=2    rlen=24  ".."
     ino=59171 off=268814041 rlen=40  "104-0432_CRW.JPG"

output truncated here...file list continues on...missing certain files...

the "ls":

lstat64("/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
0x08046980) = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:02:47 EST 2008  [ 1201669367 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
openat(AT_FDCWD,
"/pond/photos/unsorted/drive-452a/[E]/drive/archives/seconddisk_20nov2002/eujpg",
O_RDONLY|O_NDELAY|O_LARGEFILE) = 3
fcntl(3, F_SETFD, 0x00000001)                   = 0
fstat64(3, 0x08047980)                          = 0
     d=0x02D90002 i=59135 m=0040755 l=2  u=0     g=0     sz=222
         at = Jan 30 00:02:47 EST 2008  [ 1201669367 ]
         mt = May  2 19:59:48 EDT 2006  [ 1146614388 ]
         ct = Jan 20 23:37:48 EST 2008  [ 1200890268 ]
     bsz=14336 blks=7     fs=zfs
getdents64(3, 0xFECE4000, 8192)                 = 8160
     ino=59135 off=1    rlen=24  "."
     ino=21193 off=2    rlen=24  ".."
     ino=59171 off=268814041 rlen=40  "104-0432_CRW.JPG"

output trunacted here...file list continues on with all files listed

-Chris
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to