Apache Mod-Python - Commented: (MODPYTHON-222) Support for chunked transfer

This is Interesting: Free IT Magazines  
Home > Archive > Apache Mod-Python > June 2007 > Commented: (MODPYTHON-222) Support for chunked transfer





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Commented: (MODPYTHON-222) Support for chunked transfer
M Willson (JIRA)

2007-06-24, 1:13 pm


[ https://issues.apache.org/jira/brow...action_12507696 ]

M Willson commented on MODPYTHON-222:
-------------------------------------

This would be useful, particularly for handling large PUT requests.

> Support for chunked transfer encoding on request content.
> ---------------------------------------------------------
>
> Key: MODPYTHON-222
> URL: https://issues.apache.org/jira/browse/MODPYTHON-222
> Project: mod_python
> Issue Type: New Feature
> Components: core
> Affects Versions: 3.3.1
> Reporter: Graham Dumpleton
>
> It is currently not possible to use chunked transfer encoding on request content delivered to a mod_python request handler.
> The use of chunked transfer encoding is explicitly blocked in C code by:
> rc = ap_setup_client_block(self->request_rec, REQUEST_CHUNKED_ERROR);
> To allow chunked transfer encoding instead of REQUEST_CHUNKED_ERROR it would be necessary to supply REQUEST_CHUNKED_DECHUNK.
> Problem is that it isn't that simple.
> First off, the problems associated with MODPYTHON-212 have to be fixed with code being able to cope with there being no content length.
> The next issue is that req.read() method is currently documented as behaving as:
> If the len argument is negative or omitted, reads all data given by the client.
> This means that can't have req.read() with no arguments mean give me everything that is currently available in input buffers as everyone currently expects it to return everything sent by client. Thus, to be able to process streaming data one would have

to supply an amount of data that one wants to read. The code for that though will always try to ensure that that exact amount of data is read and will block if not enough and not end of input. A handler though may not want it to block and be happy with ju
st getting what is read and only expect it to block if nothing currently available.
> In other words, the current specification for how req.read() behaves is incompatible with what would be required to support chunked transfer encoding on request content.
> Not sure how this conflict can be resolved.


Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com