bug-textutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problem with sort ... textutils-2.0.21 on TRU64 v5.1a


From: Bob Proulx
Subject: Re: Problem with sort ... textutils-2.0.21 on TRU64 v5.1a
Date: Fri, 30 Aug 2002 19:02:09 -0600
User-agent: Mutt/1.4i

Please send followups to the list.

> 1. I have recreated the error with a 800mb file. 
> 
> address@hidden:/sorttest >ls -l SORT_FILE_10m_recs.dat
> -rw-rw-r--   1 root     system   846534740 Aug 27 11:53
> SORT_FILE_10m_recs.dat
> 
> >cat SORT_FILE_10m_recs.dat | /usr/local/bin/sort -T /sorttest -t "|" +0 -1n
> > todelete &
> 
> The process started to create files ...
> 
> address@hidden:/sorttest >ls -lt
> total 961256
> -rw-------   1 root     system     4678491 Aug 27 11:55 sortacvpjC
> -rw-------   1 root     system     4722340 Aug 27 11:55 sortacvpjA
> -rw-------   1 root     system     4681291 Aug 27 11:55 sortacvpjB
[...]
> Then died a few seconds later with ... /usr/local/bin/sort: cannot create
> temporary file: /sorttest/sortacvpj: File exists.

Since the files are 4.5 MB in size I am guessing that when sort
deduced your memory it does not think you have very much.  Therefore
it did not sort using very large chunks.  Therefore it would need
around 180 of these sized files to sort an 800 MB file.  If I did not
mess up in my quick calculations here.  It is possible that your
mkstemp() library call can't make that many temporary files.

> 3. Is GNU sort on Tru64 compiled as a 32-bit program or a 64-bit program?
> 
>         Not sure. Used the default ./configure , make , make install. I have
> included the configure output below. 

I am not familiar with True64 and did not see anything in the config
output that clued me into that.

Running 'file sort' would usually have file print out enough to tell.
With True64 in the name you would expect 64-bit.  ;-)

> 4. Amount of RAM ... = 5gb.

Which should certainly be enough to sort an 800 MB file in memory
directly without using any temporary files.  So it is obtaining an
incorrect value for the amount of memory there.

Would it be possible for you to debug what lib/physmem.c is returning
for memory on your system for the two library routines physmem_total()
and physmem_available()?

Bob




reply via email to

[Prev in Thread] Current Thread [Next in Thread]