- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Test on BCM94390WCD2 with FreeRTOS+LwIP (SDK-3.1.0-beta1).
We hit http invalid chunked encoding error, this can be reproduced by:
Use snip/pin_webserver app to test it:
1. Add below line to http database of apps/snip/ping_webserver/ping_webserver.c
{ "/apps/ping_webserver/test.css", "text/css", WICED_RESOURCE_URL_CONTENT, .url_content.resource_data = &resources_apps_DIR_ping_webserver_DIR_test_css, },
2. Copy test test.css to resources/apps/ping_webserver/test.css
3. Add apps/ping_webserver/test.css to ping_webserver.mk
4. Send http request
Attached 3 files to reproduce this issue:
1. the screensoot to show the invalid chunked encoding error on browser
2. the test.css file for download test
3. the curl download log shows "curl: (56) Problem (3) in the Chunked-Encoded data"
- Labels:
-
SDK 3.x
-
Web Services
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I test again with ThreadX-NetX for this issue.
With ThreadX-NetX build, it does not show invalid chunked encoding error.
However, it still does not work because the download is always incomplete.
This can be easily test with browser or curl.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi,
Just want to highlight that this issue is a major issue for us.
Some css/javascript files cannot be successfully download, so the web UI
cannot properly loaded.
So we are not able to show a working demo for our customer at this moment.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
sam.lin,
I'm trying to work on your issue, shall let you know soon.
thnx,
vik86
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sam we tried reproducing your issue. We tried on two different setups and different boards and we were not able to reproduce. Could you verify once more and provide more details on the issue.
thnx
vik86
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi vik86,
I test this many times tody and found it's hard to reproduce it.
I only see the invalid chunked encoding error once today.
It's a bit strange because on the day I reported this issue I can
100% reproduce it.
I'll try if I can find a better way to reproduce it.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi vik86,
I found the most easy way to reproduce is to press F5 on the browser to reload
the page.
I'm using google chrome which has develop tool to show the chunked encoding
error. Press 「Ctrl+Shift+I」on google chrome browser and select "Network" section.
Then press F5 multiple times and you can see the error.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
BTW, don't press F5 too quickly.
Otherwise, you may see the request is in "pending" status and then the
request never success. This is probably another bug that need fix.
But for the invalid-chunked-encoding error, just don't press F5 too quickly
in case you hit another bug.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi vik86,
Just want to know if you can reproduce this issue now?
We have a more complex UI that includes more javascript and css files
so it's easy to hit this issue in our application.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
vik86 wrote:
sam.lin,
I'm trying to work on your issue, shall let you know soon.
hi vik86,
My debug code shows the invalid chunked encoding issue happens in below code path.
Can you take a look at this?
In WICED/network/LwIP/ver1.4.0.rc1/src/api/api_msg.c,
available = tcp_sndbuf(conn->pcb.tcp);
when available < len, this issue happens.
// e.g. my debug code shows len=484 conn->current_msg->msg.w.len=1412
if (dontblock && (len < conn->current_msg->msg.w.len)) {
/* failed to send all data at once -> nonblocking write not possible */
err = ERR_MEM;
}
Then it goes to nonblocking write failed path:
if (dontblock && (err == ERR_MEM)) {
/* nonblocking write failed */
write_finished = 1;
err = ERR_WOULDBLOCK;
/* let poll_tcp check writable space to mark the pcb
writable again */
conn->flags |= NETCONN_FLAG_CHECK_WRITESPACE;
/* let select mark this pcb as non-writable. */
API_EVENT(conn, NETCONN_EVT_SENDMINUS, len);
}
thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear
For the this issues, I have following test results in 4390 with SDK3.1.1
For small application, it works fine. but big size application code it has problem in ThreadX
Our application console :
Target 4390 | Flash | RAM |
By FreeRTOS : TOTAL (bytes) | 0 | 368846 |
By ThreadX : TOTAL (bytes) | 0 | 387651 |
- FreeRTOS works fine for OTA,
- ThreadX works ( wifi connection and ping is OK ) but web access failed
- ota_fr application test
- FreeRTOS works fine for OTA,
- ThreadX works fine for OTA,
TKS
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Discussion is being locked. If you have any follow-up, please start a new discussion.