You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@trafficserver.apache.org by GitBox <gi...@apache.org> on 2021/08/20 16:01:11 UTC
[GitHub] [trafficserver] duke8253 opened a new pull request #8268: Avoid chunking in the post redirect case
duke8253 opened a new pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268
After fixing #8265 we started seeing some crashes happening, this fixes the crash.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [trafficserver] masaori335 commented on pull request #8268: Avoid chunking in the post redirect case
Posted by GitBox <gi...@apache.org>.
masaori335 commented on pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268#issuecomment-906805282
Right, we haven't covered the combination of POST + Chunk + Redirect + H2. Separate PR is good. Thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [trafficserver] masaori335 commented on pull request #8268: Avoid chunking in the post redirect case
Posted by GitBox <gi...@apache.org>.
masaori335 commented on pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268#issuecomment-905032958
Any idea of why this AuTest doesn't cover this case? Can we make it to cover?
https://github.com/apache/trafficserver/blob/edef25cc5ddf1355009bdabcdf68b59c88218833/tests/gold_tests/h2/http2.test.py#L184-L192
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [trafficserver] shinrich commented on pull request #8268: Avoid chunking in the post redirect case
Posted by GitBox <gi...@apache.org>.
shinrich commented on pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268#issuecomment-906704667
We can add a test for redirects with a chunked post. Perhaps in a separate PR. I don't think the existing tests have follow redirect enabled.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [trafficserver] duke8253 merged pull request #8268: Avoid chunking in the post redirect case
Posted by GitBox <gi...@apache.org>.
duke8253 merged pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [trafficserver] shinrich commented on pull request #8268: Avoid chunking in the post redirect case
Posted by GitBox <gi...@apache.org>.
shinrich commented on pull request #8268:
URL: https://github.com/apache/trafficserver/pull/8268#issuecomment-902813001
The problem is we were marking that the post body should be chunked. But in the post redirect case, the data is being replayed from a static buffer. There is no real VC to be doing the chunked calculation against. So p->do_chunking is not set. So chunked_buffer_start is not set. So the call to clone that nullptr causes the crash.
```
[ 00 ] traffic_server HttpTunnel::producer_run(HttpTunnelProducer*) ( P_IOBuffer.h:753 )
[ 01 ] traffic_server HttpTunnel::tunnel_run(HttpTunnelProducer*) ( HttpTunnel.cc:720 )
[ 02 ] traffic_server HttpSM::do_setup_post_tunnel(HttpVC_t) ( HttpSM.cc:5923 )
[ 03 ] traffic_server HttpSM::state_send_server_request_header(int, void*) ( HttpSM.cc:2197 )
[ 04 ] traffic_server HttpSM::state_read_server_response_header(int, void*) ( HttpSM.cc:2004 )
[ 05 ] traffic_server HttpSM::main_handler(int, void*) ( HttpSM.cc:2701 )
[ 06 ] traffic_server write_signal_and_update(int, UnixNetVConnection*) ( UnixNetVConnection.cc:117 )
[ 07 ] traffic_server write_to_net_io(NetHandler*, UnixNetVConnection*, EThread*) ( UnixNetVConnection.cc:162 )
[ 08 ] traffic_server NetHandler::process_ready_list() ( UnixNet.cc:432 )
[ 09 ] traffic_server NetHandler::waitForActivity(long) ( UnixNet.cc:552 )
[ 10 ] traffic_server EThread::execute_regular() ( UnixEThread.cc:303 )
[ 11 ] traffic_server execute ( UnixEThread.cc:364 )
[ 12 ] traffic_server EThread::execute() ( UnixEThread.cc:342 )
[ 13 ] traffic_server spawn_thread_internal ( Thread.cc:92 )
[ 14 ] libpthread-2.17.so start_thread ( pthread_create.c:307 )
```
I think in the past (9.0), we were placing transfer-encoding headers on the H2 client requests. And chunkifying the H2 request data before it came to the HttpSM. With 9.1, we cleaned up that logic.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@trafficserver.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org