You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Arief Hasani <ah...@yahoo.com.INVALID> on 2019/12/05 05:47:38 UTC
http2 async timeout setting
Hi Guys,
Seems like AsyncContext.setTimeout is not working if using http2 (clients are chome, firefox, safari on mac). It runs well on http1.1
Thanks
Re: http2 async timeout setting
Posted by Mark Thomas <ma...@apache.org>.
On 10/12/2019 11:23, Arief Hasani wrote:
> Hi Mark,
> Very much appreciated.
Fixed in:
- master for 9.0.31 onwards
- 8.5.x for 8.5.51 onwards
7.0.x was not affected.
Mark
> Thanks
> On Monday, December 9, 2019, 05:59:58 PM GMT+7, Mark Thomas <ma...@apache.org> wrote:
>
> On 07/12/2019 03:46, Arief Hasani wrote:
>> Hi Chris,
>> Thanks for the reminder. following is the code that runs the timeout listener on time while running on http1.1 but not on http2. tested on 9.0.29
>
> <snip/>
>
> I can reproduce this. I'm working on a fix now.
>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: http2 async timeout setting
Posted by Arief Hasani <ah...@yahoo.com.INVALID>.
Hi Mark,
Very much appreciated.
Thanks
On Monday, December 9, 2019, 05:59:58 PM GMT+7, Mark Thomas <ma...@apache.org> wrote:
On 07/12/2019 03:46, Arief Hasani wrote:
> Hi Chris,
> Thanks for the reminder. following is the code that runs the timeout listener on time while running on http1.1 but not on http2. tested on 9.0.29
<snip/>
I can reproduce this. I'm working on a fix now.
Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: http2 async timeout setting
Posted by Mark Thomas <ma...@apache.org>.
On 07/12/2019 03:46, Arief Hasani wrote:
> Hi Chris,
> Thanks for the reminder. following is the code that runs the timeout listener on time while running on http1.1 but not on http2. tested on 9.0.29
<snip/>
I can reproduce this. I'm working on a fix now.
Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: http2 async timeout setting
Posted by Arief Hasani <ah...@yahoo.com.INVALID>.
Hi Chris,
Thanks for the reminder. following is the code that runs the timeout listener on time while running on http1.1 but not on http2. tested on 9.0.29
//// start code@WebServlet(name = "Test", urlPatterns = {"/test"}, asyncSupported = true)public class Main extends HttpServlet {
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8");
final AsyncContext ac = request.startAsync(); ac.addListener(new AsyncListener() { @Override public void onComplete(AsyncEvent event) throws IOException { System.out.println("AppAsyncListener onComplete"); }
@Override public void onTimeout(AsyncEvent event) throws IOException { System.out.println("AppAsyncListener onTimeout"); AsyncContext ac = event.getAsyncContext(); ac.complete(); }
@Override public void onError(AsyncEvent event) throws IOException { System.out.println("AppAsyncListener onError"); }
@Override public void onStartAsync(AsyncEvent event) throws IOException { System.out.println("AppAsyncListener onStart"); } });
ac.setTimeout(2000); ac.start(new Runnable() { @Override public void run() { try (PrintWriter out = ac.getResponse().getWriter()) { for (int i = 0; i < 10; i++) { try { String text = "Counter :" + i + "\n"; out.write(text); out.flush(); Thread.sleep(500); } catch (InterruptedException ex) { Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); } } ac.complete(); } catch (IOException ex) { Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); } } }); } }//// end code
server.xml excerpt for http2 is : <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" overheadContinuationThreshold="0" overheadDataThreshold="0" overheadWindowUpdateThreshold="0" />
Thanks and Cheers
On Thursday, December 5, 2019, 11:14:46 PM GMT+7, Christopher Schultz <ch...@christopherschultz.net> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Afief,
On 12/5/19 00:47, Arief Hasani wrote:
> Seems like AsyncContext.setTimeout is not working if using http2
> (clients are chome, firefox, safari on mac). It runs well on
> http1.1
Seems like posting some sample code with your expectations and
observed results might be helpful here.
- -chris
-----BEGIN PGP SIGNATURE-----
Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/
iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl3pLOcACgkQHPApP6U8
pFgaxA/+KjciXsMo/L26sFneXMCTNu/jxxlRaY4h1YnJW7kd2K/e5yu9q7uVJHwA
fUk7K1/ftZF+h/SPxVJRl9uZPSRNUd6NyANHGHtO++jPdhZQJKaqXl79fdvCBX4/
9KO5CyUrp3+I088bXaKdiBWmNoUXoOPysMuWNQyVR90IXDYDnbpAJO8U/IKQT/us
VVFfGu3vA+mpcRndYmywSlXzP/D7bwcTEuaHqXFuewJ+HxASLbgTwW1bmHdncHkS
7NGNV/A3i2RF5MJCcmG3Y2ovDPNb4xhjhriazyQ44sX3PZZimRRaGRcg9vrodFww
QlvtWaitPNmLBtegGbTUoFLy5OjVq1mLZVfpIQ4/t/7WQdhBDCndg8eSfF8Ucrpq
9I8D1E5sggLOmUFEmFnNVcQNQ34Rk4/Rg59SwaoXyT8cJBEYLDg8NViA6zqDGFXF
dTGEEI/ljO6lAqp3vsCoVV5ri+dGXEaYDlCGvsFMt9cHPAnsFOoN2DP+EIFwixKT
LoF5EGxa6mDHN+gs57G1OU+8E62AwKU+Z5ySrvs0ibV00in3GMacB+ls39fZbzqx
CTcsnbwQj1k9covq18UTj0Lw7Ni/DyxjE+FWvCKPBxYuIpob8KMyBRU2snYVIN+5
LwVk3sxs6TMAPqClB+aga9O9e3728G5vpEacF5CoyrIRNZO2YF4=
=mYUh
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: http2 async timeout setting
Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Afief,
On 12/5/19 00:47, Arief Hasani wrote:
> Seems like AsyncContext.setTimeout is not working if using http2
> (clients are chome, firefox, safari on mac). It runs well on
> http1.1
Seems like posting some sample code with your expectations and
observed results might be helpful here.
- -chris
-----BEGIN PGP SIGNATURE-----
Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/
iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl3pLOcACgkQHPApP6U8
pFgaxA/+KjciXsMo/L26sFneXMCTNu/jxxlRaY4h1YnJW7kd2K/e5yu9q7uVJHwA
fUk7K1/ftZF+h/SPxVJRl9uZPSRNUd6NyANHGHtO++jPdhZQJKaqXl79fdvCBX4/
9KO5CyUrp3+I088bXaKdiBWmNoUXoOPysMuWNQyVR90IXDYDnbpAJO8U/IKQT/us
VVFfGu3vA+mpcRndYmywSlXzP/D7bwcTEuaHqXFuewJ+HxASLbgTwW1bmHdncHkS
7NGNV/A3i2RF5MJCcmG3Y2ovDPNb4xhjhriazyQ44sX3PZZimRRaGRcg9vrodFww
QlvtWaitPNmLBtegGbTUoFLy5OjVq1mLZVfpIQ4/t/7WQdhBDCndg8eSfF8Ucrpq
9I8D1E5sggLOmUFEmFnNVcQNQ34Rk4/Rg59SwaoXyT8cJBEYLDg8NViA6zqDGFXF
dTGEEI/ljO6lAqp3vsCoVV5ri+dGXEaYDlCGvsFMt9cHPAnsFOoN2DP+EIFwixKT
LoF5EGxa6mDHN+gs57G1OU+8E62AwKU+Z5ySrvs0ibV00in3GMacB+ls39fZbzqx
CTcsnbwQj1k9covq18UTj0Lw7Ni/DyxjE+FWvCKPBxYuIpob8KMyBRU2snYVIN+5
LwVk3sxs6TMAPqClB+aga9O9e3728G5vpEacF5CoyrIRNZO2YF4=
=mYUh
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org