You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@trafficserver.apache.org by John Plevyak <jp...@acm.org> on 2009/11/29 00:07:36 UTC

large object support & range support


Currently the VConnection API includes do_io_read and do_io_write which
have "int" as the nbytes type. So I think we need to change the VConnection
API to at make the nbytes ink64.

Likewise the VIO API currently uses "int" for ndone and nbytes which
should be changed as well.

HTTP uses ink64 as the object size and I am currently working on
supporting large objects in the Cache.  Other protocols and Processors
will need to be reviewed.  Some configuration variables will likely have
to change as well.

In order to support ranges we need something like do_io_seek or a 'position'
argument on do_io_read or maybe a new do_io_pread which would only be supported
by seekable VConnections.  The do_io_pread would probably be the easiest and
most efficient in terms of callbacks.

We should probably get the API changes in earlier rather than later so that we
can stabilize with the changes.

Thoughts?

john