sebbASF commented on pull request #517:
URL: 
https://github.com/apache/incubator-ponymail/pull/517#issuecomment-693372710


   In the case of an OL Permalink which is missing from a rebuilt database, 
there are two possibilities:
   - The link contains the LID as a suffix, in which case the lid is obviously 
known.
   - The link does not contain a LID, in which case it is not needed.
   
   When rebuilding a database using OL links, any mails that don't have LID 
headers will need a suffix.
   If possible the original LIDs should be used, but unlike with the O-style 
links it is not essential.
   It suffices to use a best guess as to the original LID that was used.
   This is because the opaque hash part is unaffected by the chosen LID.
   The opaque hash prefix can be used to find a missing link; it is not 
essential to rebuild the full Permalink (though of course that is better).
   
   In the case of an O-style Permalink, in order to match the opaque hash, it 
is necessary to know the exact LID that was used.
   Of course if the LID was the same as in the headers that's not necessary, 
but in that case the O and OL Permalinks are the same anyway.
   If the LID is different from the headers, then it's not possible to 
regenerate the same hash unless the same LID is used.
   Given a missing Permalink, AFAICT it will be necessary to generate hashes 
for each mail with each possible LID, of which there may be hundreds.
   
   **Note**: I am assuming here that the O-style Permalink includes the lid in 
the hash, either as an existing header, or as an addition. *That is not 
actually the case for the amended PR, however as I indicated earlier that will 
need to be fixed.*
   **If the same message is posted to two different lists, the copies need to 
have different Permalinks**.
   If the O-style link does not include a LID in the hash, then some other 
means will need to be found to distinguish copies on other lists, for example 
by appending the LID in clear, which is the OL-style approach.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to