Welcome! Log In Create A New Profile

Advanced

Re: Subrequests from body filters

Marat Dakota
March 25, 2013 10:48AM
>> >> But is it ok to call next body filter in subrequest's body filter to
>> >> produce output to main request?
>> >> I mean ngx_http_next_body_filter(r->main, out).
>> >
>> > No. You should call next body filter of the request you are
>> > working with. It's postpone filter responsibility to manage
>> > subrequests output, and if you try to do this yourself instead -
>> > result will be undefined.
>>
>> It seems to work as expected for me. How can I cause problems with this?
>
> Undefined behaviour sometimes appear to work as expected. This
> doesn't mean it's correct though.
>
> Depending on the exact place in a filter chain where you did it
> and various other factors like timings, results may vary from
> "nothing bad might happen, as r == r->main anyway" to "response
> will completely incorrect as wrong filters will be applied to the
> response body".
>
> Most trivial thing to test is probably a subrequest order, which
> likely will be wrong in your case if first subrequest will take
> longer to handle than second one.

Subrequests order doesn't matter much for me. I feed my library (the
one I write a Nginx module for) with a subrequests results in a
whatever order and my library returns next chunk of response only when
it is ready.

My library has just one function to call. This function returns the
next chunk of data (if any) to send as a response and/or a list of
subrequests to make. In every call to subrequest body filter I pass
subrequest's response to my library and get a new list of subrequests
(if any) and a new chunk of final response (if any). And so on, until
my library says it's done.

And if I really do something wrong in terms of Nginx architecture,
please, could you give me more details about how to achieve my goals
correctly?

Thank you for helping.

--
Marat

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

Subrequests from body filters

Marat Dakota 982 March 24, 2013 01:14PM

Re: Subrequests from body filters

Marat Dakota 448 March 24, 2013 05:16PM

Re: Subrequests from body filters

Marat Dakota 555 March 24, 2013 05:40PM

Re: Subrequests from body filters

Maxim Dounin 503 March 25, 2013 07:58AM

Re: Subrequests from body filters

Marat Dakota 470 March 25, 2013 09:42AM

Re: Subrequests from body filters

Maxim Dounin 443 March 25, 2013 09:48AM

Re: Subrequests from body filters

Marat Dakota 459 March 25, 2013 09:54AM

Re: Subrequests from body filters

Maxim Dounin 460 March 25, 2013 10:22AM

Re: Subrequests from body filters

Marat Dakota 408 March 25, 2013 10:48AM

Re: Subrequests from body filters

Maxim Dounin 484 March 25, 2013 10:56AM

Re: Subrequests from body filters

Marat Dakota 465 March 25, 2013 11:42AM

Re: Subrequests from body filters

Maxim Dounin 410 March 25, 2013 12:02PM

Re: Subrequests from body filters

Marat Dakota 448 March 25, 2013 12:24PM

Re: Subrequests from body filters

Maxim Dounin 652 March 25, 2013 02:12PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 160
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready