[Mailman-Developers] [Bug 985149] Add List-Post value to permalink hash input

Richard Wackerbarth richard at NFSNet.org
Fri Apr 20 19:09:32 CEST 2012

On Apr 20, 2012, at 11:22 AM, Barry Warsaw wrote:

> On Apr 19, 2012, at 10:30 AM, Stephen J. Turnbull wrote:
>> Second, that order is wrong IMHO; the idea of the hash is to identify
>> the message in a fixed-length format.  If you want to qualify it with
>> list information, why not add the list identifier to the *output* of
>> the hash?  Now you have a well-defined[1] format that (1) allows you
>> to distinguish cross-posted instances of the same message *and* (2)
>> identify cross-posted instances of the same message, depending on your
>> application.
> I think the hash value should be opaque.  Jeff can perhaps elaborate his
> use-case but I don't think the List-ID needs to be (or frankly *should* be)
> extractable from the hash, but instead just needs to inform the hash value.
> IOW, if you cross-post a message with Message-ID: <foo> to one at example.org and
> two at example.com, you'd get two different messages forwarded to the archives,
> and they would have different Permalink: hash values.  Before this proposal,
> they'd have the same value.

I can see use cases for both.

As for the "opaque" hash, the order is not important. The order of the inputs is arbitrary. It needs to be fixed and published so that multiple encoders will derive the same hash as that generated by another encoder.

If the List ID made a visible part of the message identifier, then it is creating a separate namespace for each list. Here the order may have implications when viewed in the context of other uses.

Here, we might be wish to be able to have only one copy of the message in the archive and/or the distribution channels even when that message gets cross-posted to multiple lists.

The one thing that does need to be visible is the designation of the revision of the hashing algorithm. Otherwise, without that visible indicator, there is no way to recreate a "stable" value if a rehashing needs to be performed.


More information about the Mailman-Developers mailing list