#1 2020-04-10 06:35:29

songshuang
Member
From: changzhou,jiangsu,china
Registered: 2018-08-09
Posts: 20

"ECrtSocket ("SndLow()" Err Founded

Hello,
i has a project in  2019.3; ECrtSocket ("SndLow() error is founded today when client get a static file ,the file is 1.8MB abount.
logs is showing:
20200410 14155759  +    admin.TSsAdminServer(7f506ccdab10).URI GET root/static/keysData.rif in=0 B
20200410 14155760  -    00.012.987
20200410 14161760 EXC   ECrtSocket ("SndLow() len=1485666 [11 WSATRY_AGAIN Try again]") [TssHTTPSvr 65500/remotedata3 root PoolSub] at 52ea99 52e9cf 534308 53389d 53862f 537ed0 53804d
so i update newest mormot source , but the errer as before.
the environment is buntu 16.04.6 LTS (GNU/Linux 4.4.0-166-generic x86_64)
Number of files received by the client is 16% abount,then error happend.
thanks for help.

Last edited by songshuang (2020-04-10 06:40:00)

Offline

#2 2020-04-10 10:27:06

mpv
Member
From: Ukraine
Registered: 2012-03-24
Posts: 1,571
Website

Re: "ECrtSocket ("SndLow()" Err Founded

Sending of a static files directly is not very good idea.
In case nginx is used as a reverse-proxy (as recommended for Linux production)  consider using NginxSendFileFrom
If nginx not used - OnSendFile event can be implemented to use `sendfile` syscall

Problem you describe occurs in case client closes his socket. What client you use?

P.S.
Is I understand in your case static folder can be directly served by reverse proxy (so such requests enen do not reach the app server)

Last edited by mpv (2020-04-10 10:29:24)

Offline

#3 2020-04-11 00:51:29

songshuang
Member
From: changzhou,jiangsu,china
Registered: 2018-08-09
Posts: 20

Re: "ECrtSocket ("SndLow()" Err Founded

the project is based on sample 30 mvc server. so the static file is published no any "user's" code.
get the static file by the url ,is http://ip/root/static/keysData.rif. i get the file use chrome browser, the progress getting the static file is: 0% go 16%, then turn to 0% repeatly, i think chrome try on get this. After this cycle was repeated a few times,chrome show error.
yes, sending of a static files use nginx is a good idea.
thank you



i found the problem also, when Ctxt.Returns('....[long size string,got by database record ]...').   client show the err: the content-lenth is more than received.
Other factors is that the network is poor! network bandwidth is 2M only.  client is in china and server is in germany. smile

Last edited by songshuang (2020-04-11 01:17:53)

Offline

#4 2020-04-11 06:26:25

mpv
Member
From: Ukraine
Registered: 2012-03-24
Posts: 1,571
Website

Re: "ECrtSocket ("SndLow()" Err Founded

Most likely this is  China firewall problem, not a mORMot.

Offline

#5 2020-08-31 05:31:28

songshuang
Member
From: changzhou,jiangsu,china
Registered: 2018-08-09
Posts: 20

Re: "ECrtSocket ("SndLow()" Err Founded

Wear a hat,its ok.
use nginx as a shield,It's working smile

Offline

Board footer

Powered by FluxBB