[hfs-user] Index / Leaf nodes - help needed..

Entwicklung entwicklung@whengenibk.de
Thu, 11 Apr 2002 15:30:17 +0200


This is a multi-part message in MIME format.

------=_NextPart_000_0007_01C1E16D.C8CF7AD0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hello Listers,
                    Unfortunately I seem to be stuck again - I tried =
creating a volume with 601 files. In my case this requires one level of =
leaf-nodes and 3 levels of index nodes (including the root level ). Of =
these 601 files
I'm not able to read 16 files . My tree looks like this :

Root points to IndexNodeA1 and IndexNodeA2.
IndexNodeA1 contains pointer records to IndexNodesB1..11
IndexNodeA2 contains pointer records to IndexNodesB12..17

Here's where the problem seems to arise:
IndexNodeB16 and IndexNodeB17 contain pointers to leaf-nodes L1..11 and =
L12..17 each
Of these the data present in the leaf-nodes L9,L10 and L11 as well as =
that present in L15, L16 and L17seems to getting lost. In short the =
final three pointer records present in the lowest level index node (only =
in the last 2 of the 17 index nodes however) seems to be getting lost. =
The funny part is L15 contains 3 catalog-file records of which the first =
one is again readable but the other two aren't.=20

My point of view:=20
1. As was mentioned in a previous email, since the leaves are gone thru' =
first, all the file-icons are displayed correctly on the Mac. Then the =
index nodes are traversed.=20

2. The problem cannot lie in the root or A level index nodes since part =
of the data pointed to by each of the B-level index nodes get dispayed =
correctly. If there was some mistake in the Ptr records present in level =
A then one would expect that none of the leaf nodes pointed to by a =
particular B-level node appear correctly.

3. I also checked the record offsets at the end of the nodes and the =
keylengths.All my keys are sorted. I don't have any thread records at =
the moment. Under linux hfsutils seems to be able to read all files =
present in L15,L16 and L17 without any problem though my Mac refuses to =
read any other than the first file in L15. (Error -60)

I'm in a fix right now since I don't know what this is due to or how =
exactly to isolate this error. My mode of generating the index nodes is =
quite generic so I would expect an error to either repeat itself more =
frequently or no error to appear... I need some professional help from =
anyone who could take a look at my problem and offer some suggestions. I =
wanted to attach an image but it is a little large to openly post on the =
list to everyone. If anyone would like to take a look at it please let =
me know... would be glad if someone could help.

Regards,
Nandini

=20

=20

------=_NextPart_000_0007_01C1E16D.C8CF7AD0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.2920.0" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hello Listers,</FONT></DIV>
<DIV><FONT face=3DArial=20
size=3D2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=20
Unfortunately I seem to be stuck again - I tried creating a volume with =
601=20
files. In my case this requires one level of leaf-nodes and 3 levels of =
index=20
nodes (including the root level ). Of these 601 files</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>I'm not able to read 16 files . My tree =
looks like=20
this :</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Root&nbsp;points to IndexNodeA1 and=20
IndexNodeA2.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>IndexNodeA1 contains pointer records to =

IndexNodesB1..11</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>IndexNodeA2 contains pointer records to =

IndexNodesB12..17</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Here's where the problem seems to=20
arise:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>IndexNodeB16 and IndexNodeB17 contain =
pointers to=20
leaf-nodes L1..11 and L12..17 each</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Of these the data present in the =
leaf-nodes L9,L10=20
and L11 as well as that present in L15, L16 and L17seems to getting =
lost. In=20
short the final three pointer records present in the lowest level index =
node=20
(only in the last 2 of the 17 index nodes however) seems to be getting =
lost. The=20
funny part is L15 contains 3 catalog-file records of which the first one =
is=20
again readable but the other two aren't. </FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>My point of view: </FONT></DIV>
<DIV><FONT face=3DArial size=3D2>1. As was mentioned in a previous =
email, since the=20
leaves are gone thru' first, all the file-icons are =
displayed&nbsp;correctly on=20
the Mac. Then the index nodes are traversed. </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>2. The problem cannot lie in the root =
or A level=20
index nodes since part of the data pointed to by each of the B-level =
index nodes=20
get dispayed correctly. If there&nbsp;was some mistake in the Ptr =
records=20
present in level A then one would expect that&nbsp;none of </FONT><FONT=20
face=3DArial size=3D2>the leaf nodes pointed to by a particular B-level =
node appear=20
correctly.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>3. I also checked the record offsets at =
the end of=20
the nodes and the keylengths.All my keys are sorted. I don't have any =
thread=20
records at the moment. Under linux hfsutils&nbsp;seems to be able to =
read all=20
files present in L15,L16 and L17 without any problem</FONT>&nbsp;<FONT=20
face=3DArial size=3D2>though my Mac refuses to read any other than the =
first file in=20
L15. (Error -60)</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>I'm in a fix right now since I don't =
know what this=20
is due to or how exactly to isolate this error. My mode of generating =
the index=20
nodes is quite generic so I would expect an error to either repeat=20
itself&nbsp;more frequently or no error to appear... I need some =
professional=20
help from anyone who could take a look at&nbsp;my problem and offer some =

suggestions. I wanted to attach an&nbsp;image but it is a little large =
to openly=20
post on the list to everyone. If anyone would like to take a look at it =
please=20
let me know... would be glad if someone could help.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Regards,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Nandini</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></BODY></HTML>

------=_NextPart_000_0007_01C1E16D.C8CF7AD0--