You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spamassassin.apache.org by bu...@bugzilla.spamassassin.org on 2007/06/17 23:59:41 UTC

[Bug 5521] New: Avoiding one copy of mail during Mail::SpamAssassin::check

http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5521

           Summary: Avoiding one copy of mail during
                    Mail::SpamAssassin::check
           Product: Spamassassin
           Version: 3.2.1
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: Documentation
        AssignedTo: dev@spamassassin.apache.org
        ReportedBy: Mark.Martinec@ijs.si


I'm looking for ways of minimizing in-memory copies of a mail message
when an application program (like spamd or amavisd) calls SA.
It turns out the topic can have deep implications and is quite broad,
so I'll keep the question for this problem report very simple, and
leave the rest to a potential new p-r.

The normal API goes like this:
  $spamtest = Mail::SpamAssassin->new();
  $mail = $spamtest->parse($message);
  $status = $spamtest->check($mail);

On a call to parse() the $message may be a single multiline string,
an array reference, or a file handle. When deciding which one to
use, an answer to the following question would be valuable.

So the question is: when passing a message to parse() as an arrayref
(and noticing that the current code makes a copy of it), is it safe
for the called to discard its array _before_ calling check() ?

Currently this is not documented, so one interpretation is that
a door is intended to be left pen for a possible future change,
which might let SA routines to work directly on the passed array,
instead of on its copy.

If this is not the case and in fact it is allowed to ditch the array
right after calling parse(), it would be nice if this were documented
explicitly (a single statement would suffice in the man page).



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

[Bug 5521] Avoiding one copy of mail during Mail::SpamAssassin::check

Posted by bu...@bugzilla.spamassassin.org.
http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5521


parkerm@pobox.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|parkerm@pobox.com           |






------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

[Bug 5521] Avoiding one copy of mail during Mail::SpamAssassin::check

Posted by bu...@bugzilla.spamassassin.org.
http://issues.apache.org/SpamAssassin/show_bug.cgi?id=5521


parkerm@pobox.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |parkerm@pobox.com






------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.