[jira] Resolved: (MODPYTHON-107) mod_python.publisher shouldn't flush result when written.

2006-01-10 Thread Jim Gallacher (JIRA)
 [ http://issues.apache.org/jira/browse/MODPYTHON-107?page=all ]
 
Jim Gallacher resolved MODPYTHON-107:
-

Fix Version: 3.2
 Resolution: Fixed

> mod_python.publisher shouldn't flush result when written.
> -
>
>  Key: MODPYTHON-107
>  URL: http://issues.apache.org/jira/browse/MODPYTHON-107
>  Project: mod_python
> Type: Improvement
>   Components: publisher
> Versions: 3.2
> Reporter: Graham Dumpleton
>  Fix For: 3.2

>
> In mod_python.publisher, the result returned from a published function is 
> returned as the content of the response after it has been converted to a 
> string, using:
>   req.write(result)
> In doing this, the second argument of req.write() is defaulting to '1', which 
> indicates that the output should be flushed immediately.
> This fact prevents an output filter like CONTENT_LENGTH being used in 
> conjunction with mod_python.publisher.
> This output filter will add a content length header to the response, but only 
> if it is able to read the full content the first time the output filter is 
> called. Because the output is flushed at this point, the output filter isn't 
> able to do that, as it gets called twice. The first time it gets called will 
> be with the actual content, the second time happens when the handler returns 
> apache.OK and is effectively a null output call to force the output filter to 
> be closed off.
> If instead the output is written as:
>   req.write(result,0)
> the output will not be flushed immediately and instead will be output in one 
> call when apache.OK is returned. There is no loss of efficiency in doing this 
> and instead it will actually eliminate a redundant call into the output 
> filter.
> For further details of this issue see discussion in:
>   http://www.mail-archive.com/python-dev@httpd.apache.org/msg00951.html
> This makes one wander if there should be a configurable option for 
> mod_python.psp to tell it not to flush output as well so that CONTENT_LENGTH 
> could be used in that case as well. ???

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira



[jira] Resolved: (MODPYTHON-107) mod_python.publisher shouldn't flush result when written.

2006-03-10 Thread Graham Dumpleton (JIRA)
 [ http://issues.apache.org/jira/browse/MODPYTHON-107?page=all ]
 
Graham Dumpleton resolved MODPYTHON-107:


Resolution: Fixed

Fixed in:

  http://svn.apache.org/viewcvs?rev=384736&view=rev

Forgot to put reference in commit message.

> mod_python.publisher shouldn't flush result when written.
> -
>
>  Key: MODPYTHON-107
>  URL: http://issues.apache.org/jira/browse/MODPYTHON-107
>  Project: mod_python
> Type: Improvement
>   Components: publisher
> Versions: 3.2.7
> Reporter: Graham Dumpleton
> Assignee: Graham Dumpleton
>  Fix For: 3.3
>  Attachments: MP107_20060308_grahamd_1.diff
>
> In mod_python.publisher, the result returned from a published function is 
> returned as the content of the response after it has been converted to a 
> string, using:
>   req.write(result)
> In doing this, the second argument of req.write() is defaulting to '1', which 
> indicates that the output should be flushed immediately.
> This fact prevents an output filter like CONTENT_LENGTH being used in 
> conjunction with mod_python.publisher.
> This output filter will add a content length header to the response, but only 
> if it is able to read the full content the first time the output filter is 
> called. Because the output is flushed at this point, the output filter isn't 
> able to do that, as it gets called twice. The first time it gets called will 
> be with the actual content, the second time happens when the handler returns 
> apache.OK and is effectively a null output call to force the output filter to 
> be closed off.
> If instead the output is written as:
>   req.write(result,0)
> the output will not be flushed immediately and instead will be output in one 
> call when apache.OK is returned. There is no loss of efficiency in doing this 
> and instead it will actually eliminate a redundant call into the output 
> filter.
> For further details of this issue see discussion in:
>   http://www.mail-archive.com/python-dev@httpd.apache.org/msg00951.html
> This makes one wander if there should be a configurable option for 
> mod_python.psp to tell it not to flush output as well so that CONTENT_LENGTH 
> could be used in that case as well. ???

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira