QueuedMailDelivery badly broken on windows

Bug #174651 reported by Jacob Holm
2
Affects Status Importance Assigned to Milestone
Zope 3
Won't Fix
Undecided
Benji York
zope.sendmail
Invalid
Undecided
Unassigned

Bug Description

This problem first appears in zope.sendmail trunk rev 80928

The QueuedMailDelivery class in zope.sendmail.delivery now tries to use os.link as part of the change to allow multiple processes to deliver from the same maildir.

Unfortunately this function does not exist on windows. This causes an exception to be raised (don't remember which) that is caught and logged by the bare except, after which the whole thing is retried...

Revision history for this message
Benji York (benji) wrote : Re: [Bug 174651] QueuedMailDelivery badly broken on windows

Jacob Holm wrote:
> The QueuedMailDelivery class in zope.sendmail.delivery now tries to use
> os.link as part of the change to allow multiple processes to deliver
> from the same maildir.
>
> Unfortunately this function does not exist on windows.

I'm surprised this package was being used on Windows. Maildirs are
notorious for not working well on Windows systems (partially for this
reason).

If it is the status quo that this package work on Windows, I'll
investigate fixing this.
--
Benji York
Senior Software Engineer
Zope Corporation

Revision history for this message
Sidnei da Silva (sidnei) wrote :

On Dec 7, 2007 12:11 PM, Benji York <email address hidden> wrote:
> I'm surprised this package was being used on Windows. Maildirs are
> notorious for not working well on Windows systems (partially for this
> reason).

Sorry, which reason? The lack of os.link()? Windows *does* support
hard links between files (as long as you are using NTFS if I recall,
but who isn't?), it is exposed using pywin32 as
"win32file.CreateHardLink"

--
Sidnei da Silva
Enfold Systems http://enfoldsystems.com
Fax +1 832 201 8856 Office +1 713 942 2377 Ext 214

Revision history for this message
Christian Theune (ctheune) wrote :

Am Freitag, den 07.12.2007, 15:33 +0000 schrieb Sidnei da Silva:
> On Dec 7, 2007 12:11 PM, Benji York <email address hidden> wrote:
> > I'm surprised this package was being used on Windows. Maildirs are
> > notorious for not working well on Windows systems (partially for this
> > reason).
>
> Sorry, which reason? The lack of os.link()? Windows *does* support
> hard links between files (as long as you are using NTFS if I recall,
> but who isn't?), it is exposed using pywin32 as
> "win32file.CreateHardLink"

Yes. IIRC I had this in my fingers when working on blobs.

--
gocept gmbh & co. kg - forsterstrasse 29 - 06112 halle (saale) - germany
www.gocept.com - <email address hidden> - phone +49 345 122 9889 7 -
fax +49 345 122 9889 1 - zope and plone consulting and development

Revision history for this message
Benji York (benji) wrote :

Sidnei da Silva wrote:
> On Dec 7, 2007 12:11 PM, Benji York <email address hidden> wrote:
>> I'm surprised this package was being used on Windows. Maildirs are
>> notorious for not working well on Windows systems (partially for this
>> reason).
>
> Sorry, which reason? The lack of os.link()? Windows *does* support
> hard links between files (as long as you are using NTFS if I recall,
> but who isn't?), it is exposed using pywin32 as
> "win32file.CreateHardLink"

You and I know that, but because the ability is relatively new (in the
grand scheme of things) most Unix heads (the people who predominantly
create Maildir implementations) don't know it yet. Evidenced by the
fact that Python's os.link isn't available on Windows.

Another reason Maildir isn't used much on Windows is that it calls for
colon characters in file names. There are workarounds, for that as well
(and I don't think that'll bite us here because we're not implementing a
MUA).

If we don't mind requiring pywin32 for zope.sendmail, I'll look into
that as an option. IIRC, the last time I looked at it, pywin32 wasn't
installable with easy install, so that may be a complication.
--
Benji York
Senior Software Engineer
Zope Corporation

Revision history for this message
Sidnei da Silva (sidnei) wrote :

On Dec 7, 2007 1:53 PM, Benji York <email address hidden> wrote:
> You and I know that, but because the ability is relatively new (in the
> grand scheme of things) most Unix heads (the people who predominantly
> create Maildir implementations) don't know it yet. Evidenced by the
> fact that Python's os.link isn't available on Windows.

FWIW, I've asked Mark Hammond why, and he said the reason was that we
can't require NTFS for anything in the Standard Library, or something
along those lines.

--
Sidnei da Silva
Enfold Systems http://enfoldsystems.com
Fax +1 832 201 8856 Office +1 713 942 2377 Ext 214

Revision history for this message
Benji York (benji) wrote :

I'll try to look at this in the next couple weeks.

Changed in zope3:
assignee: nobody → benji-york
Tres Seaver (tseaver)
Changed in zope3:
status: New → Won't Fix
Changed in zope.sendmail:
assignee: nobody → Benji York (benji-york)
Revision history for this message
Benji York (benji) wrote :

I never got around to it.

Changed in zope.sendmail:
assignee: Benji York (benji) → nobody
Revision history for this message
Colin Watson (cjwatson) wrote :

The zope.sendmail project on Launchpad has been archived at the request of the Zope developers (see https://answers.launchpad.net/launchpad/+question/683589 and https://answers.launchpad.net/launchpad/+question/685285). If this bug is still relevant, please refile it at https://github.com/zopefoundation/zope.sendmail.

Changed in zope.sendmail:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.