package mailman
found 412142 1:2.1.9-7
tags 412142 +pending
severity 421895
tags 421895 =upstream pending
merge 421895 412142
thanks

That bug was not completely fixed by 1:2.1.9-7 as we thought. See
attached messages.

-- 
Lionel

--- Begin Message ---
Hi all,

The other day due to hardware issues, we migrated lists.indymedia.org
data from mailman 2.1.7 to 2.1.9. I ran the postinst manually since we
installed etch instead of sarge. Unfortunately, the unicodify_archives
script gave a traceback:

# /var/lib/mailman/bin/withlist --all -q -r unicodify_archives
Traceback (most recent call last):
  File "/var/lib/mailman/bin/withlist", line 297, in ?
    main()
  File "/var/lib/mailman/bin/withlist", line 272, in main
    r = [do_list(listname, args, func) for listname in Utils.list_names()]
  File "/var/lib/mailman/bin/withlist", line 201, in do_list
    return func(m, *args)
  File "/usr/lib/mailman/bin/unicodify_archives.py", line 60, in 
unicodify_archives
    h.database.mapKeys(unicodify_fst, archive, hdr)
  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 341, in 
mapKeys
    self.__openIndices(archive)
  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 251, in 
__openIndices
    t = DumbBTree(os.path.join(arcdir, archive + '-' + i))
  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 65, in 
__init__
    self.load()
  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 179, in load
    self.__sort(dirty=1)
  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 73, in __sort
    self.sorted.sort()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe1 in position 9: ordinal 
not in range(128)

After that I modified the script to print the list, archive period and
header when tracebacks are encountered in unicodify_archives on line 60:

Error: list imc-hungary archive 2006-February hdr subject
Error: list imc-hungary archive 2006-February hdr author
Error: list imc-france-lille archive 2007-April hdr subject
Error: list imc-france-lille archive 2007-April hdr author
Error: list cmi-brasil-contato archive 2006-February hdr subject
Error: list cmi-brasil-contato archive 2006-February hdr author
Error: list bcn-trad archive 2005-December hdr subject
Error: list bcn-trad archive 2005-December hdr author

I can provide the archive/database for the three public lists -
cmi-brasil-contato has private archives. Please let me know which files
are needed. We will be able to use --wipe and therefore ignore this, but
it might be nice to fix this case for etch, if there is time left.

-- 
bye,
pabs

http://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Pkg-mailman-hackers mailing list
[EMAIL PROTECTED]
http://lists.alioth.debian.org/mailman/listinfo/pkg-mailman-hackers

--- End Message ---
--- Begin Message ---
On Wed, Apr 04, 2007 at 09:58:06AM +0800, Paul Wise wrote:

> The other day due to hardware issues, we migrated
> lists.indymedia.org data from mailman 2.1.7 to 2.1.9.

I presume you installed 2.1.9-7?

> Unfortunately, the unicodify_archives script gave a traceback:

:-(

Analysis: When loading the index to be converted, the said loading
fails for some reason or another (line 168 or 170 of HyperDatabase.py
raises an exception). This leads to the system resorting the index
that failed to load, exactly the operation that fails before the index
is unicodified... Actually, we don't need the sorted version of the
index (we'll resort it after unicodification), so one solution would
be to add a parallel loading path that never tries to sort ("leave
dirty" or something like that). But that is ugly and a maintenance
nightmare.

I'd like to know what exception is raised by lines 168-172 of
HyperArchive.py, to see if _that_ can be avoided rather than the ugly
solution.

Another (ugly, admin-specific) work-around is to change the default
python encoding to something that will always succeed (that is,
defines a total mapping from all strings (byte sequences) to unicode,
e.g. windows-1252). This may change the results of the
unicodification, though (because it tries the default encoding
first).

> I can provide the archive/database for the three public lists -
> cmi-brasil-contato has private archives. Please let me know which files
> are needed.

A tar of the /var/lib/mailman/archives/private/<listname>/ directories
would guarantee I have all the data to reproduce the problem.

> it might be nice to fix this case for etch, if there is time left.

I doubt this, but we can try anyway.

-- 
Lionel

_______________________________________________
Pkg-mailman-hackers mailing list
[EMAIL PROTECTED]
http://lists.alioth.debian.org/mailman/listinfo/pkg-mailman-hackers


--- End Message ---
--- Begin Message ---
On Fri, 2007-04-06 at 12:45 +0200, Lionel Elie Mamane wrote:
> On Wed, Apr 04, 2007 at 09:58:06AM +0800, Paul Wise wrote:
> 
> > The other day due to hardware issues, we migrated
> > lists.indymedia.org data from mailman 2.1.7 to 2.1.9.
> 
> I presume you installed 2.1.9-7?

Well, 2.1.9-7indymedia1, but yeah, 2.1.7. 

> A tar of the /var/lib/mailman/archives/private/<listname>/ directories
> would guarantee I have all the data to reproduce the problem.

Hmm, ssh access to the server is down, I'll get those for you when it
comes back up.

> > it might be nice to fix this case for etch, if there is time left.
> 
> I doubt this, but we can try anyway.

Perhaps it can be fixed in etch r1, anyway.

-- 
bye,
pabs

http://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Pkg-mailman-hackers mailing list
[EMAIL PROTECTED]
http://lists.alioth.debian.org/mailman/listinfo/pkg-mailman-hackers

--- End Message ---
--- Begin Message ---
On Fri, Apr 06, 2007 at 12:45:25PM +0200, Lionel Elie Mamane wrote:
> On Wed, Apr 04, 2007 at 09:58:06AM +0800, Paul Wise wrote:

>> The other day due to hardware issues, we migrated
>> lists.indymedia.org data from mailman 2.1.7 to 2.1.9.

>> Unfortunately, the unicodify_archives script gave a traceback:

> Analysis: When loading the index to be converted, the said loading
> fails for some reason or another (line 168 or 170 of
> HyperDatabase.py raises an exception). This leads to the system
> resorting the index that failed to load,

This analysis was wrong. I thought the Python construct:

 try:
   ...
 except Error:
   ...
 else:
   foo

meant that foo is executed if another exception than "Error" is raised
in the try block, but actually that code gets executed when *no*
exception is raised.

> (...) so one solution would be to add a parallel loading path that
> never tries to sort ("leave dirty" or something like that). But that
> is ugly and a maintenance nightmare.

I ended up doing that. It is in the pkg-mailman SVN now (for sid).

-- 
Lionel

_______________________________________________
Pkg-mailman-hackers mailing list
[EMAIL PROTECTED]
http://lists.alioth.debian.org/mailman/listinfo/pkg-mailman-hackers


--- End Message ---

Reply via email to