Solaris support

Dag-Erling Smørgrav des at linpro.no
Wed Jan 9 00:53:19 CET 2008


Theo Schlossnagle <jesus at omniti.com> writes:
> Dag-Erling Smørgrav <des at linpro.no> writes:
> > Theo Schlossnagle <jesus at omniti.com> writes:
> > > Dag-Erling Smørgrav <des at linpro.no> writes:
> > > > [...] session timeout is broken (commented out, actually) in
> > > > your patch, so broken backends and / or clients will bog you
> > > > down.
> > > Sure.  When I said "works well," I meant "as well as on Linux.
> > Uh, no, Linux actually supports SO_{RCV,SND}TIMEO, so Varnish does
> > *not* work as well on Solaris as on Linux, with or without your
> > patch.
> And Solaris supports portfs which is better than epoll.

This is not a valid parallel: event ports and epoll are two ways of
implementing the same functionality, but your patch completely
disables the idle session timeout instead of replacing it with
something that works in Solaris.

Implementing session timeouts portably (without SO_{RCV,SND}TIMEO)
would not be impossible, but it would certainly be hard.  Removing
sendfile support entirely might help, by simplifying the code.

> I'd note that the performance from the umem stevedore implementation
> is pretty nice.

What umem stevedore implementation?  I've never seen this mentioned
anywhere on or off the lists.

> And that works on FreeBSD and Linux now that libumem is ported
> there.  Obviously, every implementation has its advantages and
> disadvantages, but umem stuff is an excellent alternative for the
> malloc based stevedore under similar usage.

The malloc based stevedore is not inteded to be used at all, except
for debugging - and it hasn't been used for even that in ages, so it's
really pretty much just a proof of concept, or a sample implementation
if you will.

DES
-- 
Dag-Erling Smørgrav
Senior Software Developer
Linpro AS - www.linpro.no



More information about the varnish-dev mailing list