Page 1 of 1

Size of a NTX File

PostPosted: Thu Dec 11, 2008 9:33 am
by Jack
I have a dbf file with 20340 records .

When i index this file, the size of the NTX file is not the same
with Clipper 5.2 or FiveWin Xharbour 2.5 and FiveWin Xharbour 7.9

With Clipper 5.2 , the size of the NTX is 987 136
With Fw 2.5 and xharbour, the size is 1 272 320
With Fw 7.9 and xharbour, the size is 950 272

What is wrong ??

Here is the code :

select 0
use facture
index on facture->numfac+facture->fourn+dtos(facture->datefac) to t2
use

PostPosted: Thu Dec 11, 2008 8:13 pm
by Antonio Linares
Jack,

There is nothing wrong :-)

NTX files can have empty spaces in their internal nodes. So different RDDs versions can modify the way the NTXs are created, and then you get different NTXs sizes.

What you have to check is that the indexes are working fine. Thats what really matter :-)

PostPosted: Thu Dec 11, 2008 8:42 pm
by Jack
Antonio,
Thanks for this answer .

Is there a compatibility with xharbour 7.9 and 8.10 .

Is it dangerous to use application compiled with different version on
the same dbf and ntx files ?

If i make a do while ! eof() , is there a risk that the number of records
in the index is different ??

Can i use at the same time, on a network, with the same DBF and NTX, application written with Clipper 5 or Fivewin for clipper and
other 32 bits applications Xharbour and fivewin (2.5 7.9 8.10)


Thanks .

PostPosted: Thu Dec 11, 2008 9:09 pm
by driessen
Jack,

This is not an immediate answer to your question, but I'd like to send you a suggestion.

Why don't you use CDX in stead of NTX ?

NTX has the disadvantage that there is a file for every index while all indexes of one DBF-file are combined in just one CDX-file.

But the choice, of course, is up to you.

PostPosted: Thu Dec 11, 2008 11:58 pm
by Antonio Linares
Jack,

You have to try it by yourself.

The risk is to get a corrupted index, and you can always create it again.

PostPosted: Fri Dec 12, 2008 2:23 am
by hua
Jack,

>> Is there a compatibility with xharbour 7.9 and 8.10 .
Perhaps you mean FWH version here as xHarbour's is still 1.++?

>>Is it dangerous to use application compiled with different version on the same dbf and ntx files ?
>>If i make a do while ! eof() , is there a risk that the number of records in the index is different ??

As long as both are actually 32-bits program, I normally don't worry.

>>Can i use at the same time, on a network, with the same DBF and NTX, application written with Clipper 5 or Fivewin for clipper and other 32 bits applications Xharbour and fivewin (2.5 7.9 8.10)
Using both 16 and 32 bits programs to simultaneously access/update the same data is something that I'd try to avoid as much as possible as the RDDs are developed by totally different group of people. If you can't avoid it, take note of SET DBFLOCKSCHEME command. You can refer to xHarbour's documentation for a detailed explanation about it.

Hope that helps.