Re: incorrect output from JOIN

Barry Gould <[email protected]> Thu, 05 Dec 2002 10:15:08 -0800
Newsgroups gmane.comp.gnu.textutils.bugs
Message-ID <[email protected]>
Hi Bob,

At 09:02 PM 12/4/2002, Bob Proulx wrote:
> > With the data below, Linux join is missing the "192.168.11.254" lines from
> > it's output. (executed "join file1 file2")
...
>If LANG is set then programs are required to follow the collating
>rules of the operating system.  I am just going to jump in with this
>as the likely problem.  Please report back.  You can read about the
>details here.

>What does the output of 'locale' say?

LANG=en_US.iso885915
LC_CTYPE="en_US.iso885915"
LC_NUMERIC="en_US.iso885915"
LC_TIME="en_US.iso885915"
LC_COLLATE="en_US.iso885915"
LC_MONETARY="en_US.iso885915"
LC_MESSAGES="en_US.iso885915"
LC_PAPER="en_US.iso885915"
LC_NAME="en_US.iso885915"
LC_ADDRESS="en_US.iso885915"
LC_TELEPHONE="en_US.iso885915"
LC_MEASUREMENT="en_US.iso885915"
LC_IDENTIFICATION="en_US.iso885915"
LC_ALL=


>   locale
>
>Try unsetting LANG, or setting LC_ALL to POSIX and try the test again.
>
>   export LC_ALL=POSIX

That solves the problem. (either LANG= or LC_ALL=POSIX)

Is it safe to permanently set that to POSIX?


I just d/l'd & compiled coreutils 4.5.3 from gnu.org...
it also has the same problem output.

Also, if I SORT the files, then I only get 2 lines output from join!
(they were already sorted in some sense, but not by sort)
Then, if I export LC_ALL=POSIX, and run join again, I only get 1 line of 
output!
(re-sorting fixes that)

I'm a bit confused as I would have assumed that if both files were sorted 
in the same manner, then join shouldn't have any reason to have trouble 
with them.

BTW, can someone let RedHat know about this? (Last time I emailed them 
about a bug they were somewhat hostile as I don't have paid support.)

Thank you,
Barry