From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 15 19:33:07 2010 Received: (at submit) by debbugs.gnu.org; 15 Jul 2010 23:33:07 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZXvP-0006RW-0z for submit@debbugs.gnu.org; Thu, 15 Jul 2010 19:33:07 -0400 Received: from mx10.gnu.org ([199.232.76.166]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZXvL-0006RA-Mg for submit@debbugs.gnu.org; Thu, 15 Jul 2010 19:33:04 -0400 Received: from lists.gnu.org ([199.232.76.165]:58672) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1OZXvX-0004dk-GO for submit@debbugs.gnu.org; Thu, 15 Jul 2010 19:33:15 -0400 Received: from [140.186.70.92] (port=35331 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZXvW-0007TH-2r for bug-coreutils@gnu.org; Thu, 15 Jul 2010 19:33:15 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=unavailable version=3.3.1 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OZXvU-000828-Nk for bug-coreutils@gnu.org; Thu, 15 Jul 2010 19:33:13 -0400 Received: from kiwi.cs.ucla.edu ([131.179.128.19]:53348) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZXvU-00081y-E3 for bug-coreutils@gnu.org; Thu, 15 Jul 2010 19:33:12 -0400 Received: from [131.179.64.200] (Penguin.CS.UCLA.EDU [131.179.64.200]) by kiwi.cs.ucla.edu (8.13.8+Sun/8.13.8/UCLACS-6.0) with ESMTP id o6FNXAt1012074; Thu, 15 Jul 2010 16:33:10 -0700 (PDT) Message-ID: <4C3F9AB6.8040105@cs.ucla.edu> Date: Thu, 15 Jul 2010 16:33:10 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.10) Gecko/20100527 Thunderbird/3.0.5 MIME-Version: 1.0 To: Bug Coreutils , Chen Guo Subject: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.1 (-----) Well, after my brave words about xmemcoll0 unlikely to be misused in 'sort' I found a misuse of it. With sort -u, write_bytes replaces the trailing NUL with a newline but it doesn't change it back after writing. In some cases "sort -u" will output a line and then later use it as an argument for comparison, which will mess up if the trailing NUL has been replaced. I pushed the following patch to work around the problem. Chen, can you please verify that "sort -u" does not access the same line from multiple threads, even saved lines? If it does, then even this patch is not enough: we would need to alter write_bytes so that it does not modify its argument at all. This patch also tunes keycompare slightly. I should have broken it up into a different patch, but it sort of snuck in. By the way, any objection if I put 'const' after the types that it qualifies, e.g., "char const *" rather than "const char *"? That was the usual style here. Thanks. >From 5a31febb1b363d9a3a59ed60d5f2051d520dd407 Mon Sep 17 00:00:00 2001 From: Paul R. Eggert Date: Thu, 15 Jul 2010 16:24:03 -0700 Subject: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare * src/sort.c (keycompare): Use xmemcoll0, as it avoids a couple of stores. (write_bytes): Leave the buffer the way we found it, as it might be used again for a later comparison, if -u is used. --- src/sort.c | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/sort.c b/src/sort.c index 7d31878..960df74 100644 --- a/src/sort.c +++ b/src/sort.c @@ -2497,7 +2497,9 @@ keycompare (const struct line *a, const struct line *b, bool show_debug) } } - diff = xmemcoll (copy_a, new_len_a, copy_b, new_len_b); + copy_a[new_len_a++] = '\0'; + copy_b[new_len_b++] = '\0'; + diff = xmemcoll0 (copy_a, new_len_a, copy_b, new_len_b); if (sizeof buf < size) free (copy_a); @@ -2664,13 +2666,11 @@ write_bytes (struct line const *line, FILE *fp, char const *output_file) { char *buf = line->text; size_t n_bytes = line->length; - - *(buf + n_bytes - 1) = eolchar; + char *ebuf = buf + n_bytes; /* Convert TABs to '>' and \0 to \n when -z specified. */ if (debug && fp == stdout) { - char const *ebuf = buf + n_bytes; char const *c = buf; while (c < ebuf) @@ -2678,7 +2678,7 @@ write_bytes (struct line const *line, FILE *fp, char const *output_file) char wc = *c++; if (wc == '\t') wc = '>'; - else if (wc == 0 && eolchar == 0) + else if (c == ebuf) wc = '\n'; if (fputc (wc, fp) == EOF) die (_("write failed"), output_file); @@ -2688,8 +2688,10 @@ write_bytes (struct line const *line, FILE *fp, char const *output_file) } else { + ebuf[-1] = eolchar; if (fwrite (buf, 1, n_bytes, fp) != n_bytes) die (_("write failed"), output_file); + ebuf[-1] = '\0'; } } -- 1.7.1 From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 15 20:05:11 2010 Received: (at 6643) by debbugs.gnu.org; 16 Jul 2010 00:05:11 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZYQR-0006dg-L4 for submit@debbugs.gnu.org; Thu, 15 Jul 2010 20:05:11 -0400 Received: from mail-px0-f172.google.com ([209.85.212.172]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZYQP-0006db-1V for 6643@debbugs.gnu.org; Thu, 15 Jul 2010 20:05:09 -0400 Received: by pxi20 with SMTP id 20so684900pxi.3 for <6643@debbugs.gnu.org>; Thu, 15 Jul 2010 17:05:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=2PE90e5zuP41fprBtBoVbPjql7uPQdVgIY5LAK1rEFg=; b=wrkx2m2w0iTAqAOVfiWM7tc3fHc1UF6L4nWQTbnE7lUxiFlGnJ4Pw+pxxvP6Tkv2rx GBZE3htlHZp0lpZUygvVJ9MgDtqv2KuXL/TonXbxpbjVC/zhxr2QKIrkYZjgcTFcEBqJ Y/+3WbqMfRloy5fBpFHsmDoertnCQvAyTkkfw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=KsaRHJOftUBZqYYY6Cvd7F0N+lkpH9oehlyRvyo14pF43IpZSgModf615Ox65A+tGd IfalcM+EjD7llD5/ScAR2lhSetXgOCTVO4mkM91tsMnaSjljAbOkPBauqewRiI40RPxH jJmvr7Z00LxfuUEVulcjjxXicUlEr72S8JJas= MIME-Version: 1.0 Received: by 10.142.204.17 with SMTP id b17mr196527wfg.184.1279238720208; Thu, 15 Jul 2010 17:05:20 -0700 (PDT) Received: by 10.142.241.3 with HTTP; Thu, 15 Jul 2010 17:05:20 -0700 (PDT) In-Reply-To: <4C3F9AB6.8040105@cs.ucla.edu> References: <4C3F9AB6.8040105@cs.ucla.edu> Date: Thu, 15 Jul 2010 17:05:20 -0700 Message-ID: Subject: Re: bug#6643: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare From: Chen Guo To: Paul Eggert Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6643 Cc: 6643@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Hi Professor Eggert, > Chen, can you please verify that "sort -u" does not access the same > line from multiple threads, even saved lines? =A0If it does, then even th= is patch > is not enough: we would need to alter write_bytes so that it does not > modify its argument at all. Off the top of my head, no line is ever accessed by multiple threads at the same time. I'll go through the code tonight when I get home to doubly make sure. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 15 20:47:47 2010 Received: (at 6643) by debbugs.gnu.org; 16 Jul 2010 00:47:47 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZZ5e-0006ww-RZ for submit@debbugs.gnu.org; Thu, 15 Jul 2010 20:47:47 -0400 Received: from mail1.slb.deg.dub.stisp.net ([84.203.253.98]) by debbugs.gnu.org with smtp (Exim 4.69) (envelope-from ) id 1OZZ5c-0006wr-H9 for 6643@debbugs.gnu.org; Thu, 15 Jul 2010 20:47:45 -0400 Received: (qmail 4301 invoked from network); 16 Jul 2010 00:47:55 -0000 Received: from unknown (HELO ?192.168.2.25?) (84.203.137.218) by mail1.slb.deg.dub.stisp.net with SMTP; 16 Jul 2010 00:47:55 -0000 Message-ID: <4C3FABE5.6070909@draigBrady.com> Date: Fri, 16 Jul 2010 01:46:29 +0100 From: =?ISO-8859-1?Q?P=E1draig_Brady?= User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.8) Gecko/20100227 Thunderbird/3.0.3 MIME-Version: 1.0 To: Paul Eggert Subject: Re: bug#6643: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare References: <4C3F9AB6.8040105@cs.ucla.edu> In-Reply-To: <4C3F9AB6.8040105@cs.ucla.edu> X-Enigmail-Version: 1.0.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.7 (--) X-Debbugs-Envelope-To: 6643 Cc: 6643@debbugs.gnu.org, chenguo4@yahoo.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.7 (--) On 16/07/10 00:33, Paul Eggert wrote: > Well, after my brave words about xmemcoll0 unlikely to be misused in 'sort' > I found a misuse of it. With sort -u, write_bytes replaces the trailing NUL > with a newline but it doesn't change it back after writing. In some cases > "sort -u" will output a line and then later use it as an argument for > comparison, which will mess up if the trailing NUL has been replaced. > I pushed the following patch to work around the problem. That looks correct. Sorry for not spotting it. I had intended to look at the -u paths but didn't when I considered that all the -u tests had passed. But I now realize that they're run under LC_ALL=C I'll add a few basic tests I think to run under $mb_locale > Chen, can you please verify that "sort -u" does not access the same > line from multiple threads, even saved lines? If it does, then even this patch > is not enough: we would need to alter write_bytes so that it does not > modify its argument at all. > > This patch also tunes keycompare slightly. I should have > broken it up into a different patch, but it sort of snuck in. I didn't do that because then you're just doing what xmemcoll() is doing anyway. I.E. the other xmemcoll0() is more cache efficient because it doesn't need to write anything in the normal case for each comparison. > By the way, any objection if I put 'const' after the types that it > qualifies, e.g., "char const *" rather than "const char *"? That > was the usual style here. Yep that's fine. cheers, Pádraig. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 15 21:23:05 2010 Received: (at 6643) by debbugs.gnu.org; 16 Jul 2010 01:23:05 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZZdo-0007Bd-QP for submit@debbugs.gnu.org; Thu, 15 Jul 2010 21:23:05 -0400 Received: from kiwi.cs.ucla.edu ([131.179.128.19]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZZdl-0007BE-OI for 6643@debbugs.gnu.org; Thu, 15 Jul 2010 21:23:03 -0400 Received: from [131.179.64.200] (Penguin.CS.UCLA.EDU [131.179.64.200]) by kiwi.cs.ucla.edu (8.13.8+Sun/8.13.8/UCLACS-6.0) with ESMTP id o6G1NBLZ013036; Thu, 15 Jul 2010 18:23:11 -0700 (PDT) Message-ID: <4C3FB47F.8030900@cs.ucla.edu> Date: Thu, 15 Jul 2010 18:23:11 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.10) Gecko/20100527 Thunderbird/3.0.5 MIME-Version: 1.0 To: =?ISO-8859-1?Q?P=E1draig_Brady?= Subject: Re: bug#6643: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare References: <4C3F9AB6.8040105@cs.ucla.edu> <4C3FABE5.6070909@draigBrady.com> In-Reply-To: <4C3FABE5.6070909@draigBrady.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by kiwi.cs.ucla.edu id o6G1NBLZ013036 X-Spam-Score: -3.4 (---) X-Debbugs-Envelope-To: 6643 Cc: 6643@debbugs.gnu.org, chenguo4@yahoo.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.4 (---) On 07/15/10 17:46, P=E1draig Brady wrote: > I'll add a few basic tests I think to run under $mb_locale Thanks. Jim also reminded me that I should add at least one test for this bug, so I just pushed the one enclosed below. The test is locale-dependent and is not guaranteed to catch the bug on every host, but it did catch the bug in my RHEL 5 build host and that's good enough. >> This patch also tunes keycompare slightly. I should have >> broken it up into a different patch, but it sort of snuck in. >=20 > I didn't do that because then you're just doing what xmemcoll() > is doing anyway. I.E. the other xmemcoll0() is more cache > efficient because it doesn't need to write anything in the > normal case for each comparison. It's still a win in terms of number of memory access, no? as it avoids useless saves and restores of the junk byte after the lines. Also, with my pedantic hat on, it avoids access to uninitialized storage (that junk byte) and thus avoids undefined behavior (though this isn't likely to be a problem on any practical non-debugging environment). Anywhere, here's the further patch. >From 5ab0257f7df3658ee1ff01172b2b2ed307432155 Mon Sep 17 00:00:00 2001 From: Paul R. Eggert Date: Thu, 15 Jul 2010 18:13:08 -0700 Subject: [PATCH] sort: add a test case for the sort -u bug * tests/Makefile.am (TESTS): Add misc/sort-unique. * tests/misc/sort-unique: New file. --- tests/Makefile.am | 1 + tests/misc/sort-unique | 46 ++++++++++++++++++++++++++++++++++++++++++= ++++ 2 files changed, 47 insertions(+), 0 deletions(-) create mode 100755 tests/misc/sort-unique diff --git a/tests/Makefile.am b/tests/Makefile.am index fccd000..4aa93bf 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -234,6 +234,7 @@ TESTS =3D \ misc/sort-merge-fdlimit \ misc/sort-month \ misc/sort-rand \ + misc/sort-unique \ misc/sort-version \ misc/split-a \ misc/split-fail \ diff --git a/tests/misc/sort-unique b/tests/misc/sort-unique new file mode 100755 index 0000000..e186d34 --- /dev/null +++ b/tests/misc/sort-unique @@ -0,0 +1,46 @@ +#!/bin/sh +# Test 'sort -u'. + +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +if test "$VERBOSE" =3D yes; then + set -x + sort --version +fi + +. $srcdir/test-lib.sh + +cat > in <<\EOF +1 +2 +1 +3 +EOF + +cat > exp <<\EOF +1 +2 +3 +EOF + +for LOC in C "$LOCALE_FR" "$LOCALE_FR_UTF8"; do + test -z "$LOC" && continue + + LC_ALL=3D$LOC sort -u in > out || { fail=3D1; break; } + compare exp out || { fail=3D1; break; } +done + +Exit $fail --=20 1.7.1 From debbugs-submit-bounces@debbugs.gnu.org Fri Jul 16 06:07:02 2010 Received: (at 6643) by debbugs.gnu.org; 16 Jul 2010 10:07:02 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZhor-0002GQ-RD for submit@debbugs.gnu.org; Fri, 16 Jul 2010 06:07:02 -0400 Received: from mail-pz0-f44.google.com ([209.85.210.44]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZhoq-0002GH-B0 for 6643@debbugs.gnu.org; Fri, 16 Jul 2010 06:07:00 -0400 Received: by pzk6 with SMTP id 6so619107pzk.3 for <6643@debbugs.gnu.org>; Fri, 16 Jul 2010 03:07:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=vYYlJRw6Qbn/7w86S8dn1YuoOw5CajRBP5JPzWKHdyQ=; b=xwllDwI6z30Exsn5ZtYaZCPeHPQawqc4+qdrjilK4C5Rikxl52I/dVoTlghte3ScaB mq9oEtuXjaEcnv2X2YarKD9zxvcAPbTXr/kDkcLfHakIPUoCNn2jvVXOstK2sQ2Cs8KS sjgn5ZrW3bST4ZBrAnnwQpuCv+bGtfNKwPaEw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=Fhcgffwxha4yNg7imdjzHDHif92NiVBqX1QtM7StLwXZbAKKz60PeU9rvQLQI6wgHf YzIji6gJis7JQf2GZULteswgBECfzeh4J4ZvYUuoDaqkSq4N++VApeZ+NS32Z0KJ6WZy jXqk1qxnUVxLxNv1lsd0lWzb1OR17iksAUtec= MIME-Version: 1.0 Received: by 10.142.171.7 with SMTP id t7mr1091912wfe.213.1279274832724; Fri, 16 Jul 2010 03:07:12 -0700 (PDT) Received: by 10.142.241.3 with HTTP; Fri, 16 Jul 2010 03:07:12 -0700 (PDT) In-Reply-To: <4C3F9AB6.8040105@cs.ucla.edu> References: <4C3F9AB6.8040105@cs.ucla.edu> Date: Fri, 16 Jul 2010 03:07:12 -0700 Message-ID: Subject: Re: bug#6643: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare From: Chen Guo To: Paul Eggert Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6643 Cc: 6643@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) > Chen, can you please verify that "sort -u" does not access the same > line from multiple threads, even saved lines? =A0If it does, then even th= is patch > is not enough: we would need to alter write_bytes so that it does not > modify its argument at all. I just went over the code, pretty big nostalgia trip :-) write_unique's saved line has already worked its way up to the root node of the tree; that's to say whatever sorting is to be done on it has already been done. Thus, none of the merging threads will ever call compare on it, since they would only do work on remaining un-fully-sorted, yet-to-be- output lines. Also, only one call to write_unique will ever occur at one time on one buffer. The external merge process also makes use of a saved line, but that part is sequential I believe. Joey's external merge patch might play some games with it, but I've only skimmed their code. We'll have to cross that bridge when we get there. From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 17 05:09:50 2011 Received: (at 6643-done) by debbugs.gnu.org; 17 Apr 2011 09:09:50 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QBNzK-0001Q7-BJ for submit@debbugs.gnu.org; Sun, 17 Apr 2011 05:09:50 -0400 Received: from mx.meyering.net ([82.230.74.64]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1QBNzH-0001Pu-IW for 6643-done@debbugs.gnu.org; Sun, 17 Apr 2011 05:09:47 -0400 Received: by rho.meyering.net (Acme Bit-Twister, from userid 1000) id F06C360110; Sun, 17 Apr 2011 11:09:41 +0200 (CEST) From: Jim Meyering To: 6643-done@debbugs.gnu.org Subject: Re: bug#6643: [PATCH] sort: fix a bug with sort -u and xmemcoll0, and tune keycompare In-Reply-To: <4C3FB47F.8030900@cs.ucla.edu> (Paul Eggert's message of "Thu, 15 Jul 2010 18:23:11 -0700") References: <4C3F9AB6.8040105@cs.ucla.edu> <4C3FABE5.6070909@draigBrady.com> <4C3FB47F.8030900@cs.ucla.edu> Date: Sun, 17 Apr 2011 11:09:41 +0200 Message-ID: <8739lhckh6.fsf@rho.meyering.net> Lines: 11 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -5.9 (-----) X-Debbugs-Envelope-To: 6643-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.9 (-----) Paul Eggert wrote: > On 07/15/10 17:46, P=E1draig Brady wrote: >> I'll add a few basic tests I think to run under $mb_locale > > Thanks. Jim also reminded me that I should add at least one test for > this bug, so I just pushed the one enclosed below. The test is > locale-dependent and is not guaranteed to catch the bug on every host, > but it did catch the bug in my RHEL 5 build host and that's good > enough. Thanks. Closing. From unknown Mon Aug 18 08:27:19 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 15 May 2011 11:24:05 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator