On 2021-10-16 at 02:52 +0000, John Levine wrote:
> According to John <johnb...@protonmail.com>:
> > Which contemporary languages and infrastructures have a problem
> > with long lines? Old school used small buffers to handle
> > consecutive portions, the method
> > is not much different to line based handling. Today, buffers tend
> > to be larger than content.
> 
> The Oracle one, widely used in corporate environments does.  I asked
> the guy who maintains it who told me that it is
> heavily threaded and the locks needed to do dynamic allocation for
> arbitrary line lengths is a performance issue.

Except, there is no need to allocate arbitrary line lengths.
It can be useful to set a limit on the protocol lines themselves, so
that you don't need to process a 2 MB MAIL FROM:<> line, but once
you're inside DATA (and moreover inside the email body), you can pass
on to the storage / next pipeline pretty much everything, and only need
to watch for "\r\n." and "\r\n.\r\n", which needs quite little
buffering.

That said, it turns out I do have such an arbitrary, well-over-1000-
characters, line length line limit in my own mail server... 😳




_______________________________________________
mailop mailing list
mailop@mailop.org
https://list.mailop.org/listinfo/mailop

Reply via email to