WSAENOTSOCK 10038 error on polling with Modnet driver

Hi,

we have a problem with connecting Citect with generic modbus device (standalone discrete I / O Module)

through Modnet driver. After Runtime restart we have a error WSAENOTSOCK 10038 error (syslog.IOServer.Cluster_1.IOServer_2 log file).

 After a few minutes connection is restored and system is working fine until next restart.

Connection parameters in .ini file:  MaxPending=2, Block=250, Retry=0, Delay=0, Timeout=1000, PollTime=0, WatchTime=30000.

Modbus Pool with this device works without problem. 

We are using  Version 7.50 Service Pack Patch 13[5].

Log in included file 

citect_logs.txt

Thanks.

Parents
  • In your log, I see the error is from the TCPIP board driver. So, that may be the place to start. The full driver error message is just the Microsoft description for the Winsock error code 10038:

    2019-08-01 14:21:03.125 +05:00 [TRACE] [CORE       ] [0x2d54] [IOServer        ] [(GLOBAL)        ] [DrvDebug()                                        ] [dsp_fmt.cpp                   ] [533 ] Tcpip Driver Error: 10038 (0x2736) Length 214 Socket operation on non-socket. An operation was attempted on something that is not a socket. Either the socket handle parameter did not reference a valid socke t, or for select, a member of an fd_set was not valid.

    That can happen if the software (Citect TCPIP board driver or MODNET driver) closes the Winsock connection, then tries to use that invalid connection. That may be a bug in the Citect driver. I don't know which version of the TCPIP driver is installed, but you may want to install the latest TCPIP driver. It has some recent fixes, but doesn't specify what they all are. I see from the log file you have MODNET v2.09.07.00001. There is an updated MODNET driver available. I don't see a fix for that specific error, but it may be worth trying that also.

Reply
  • In your log, I see the error is from the TCPIP board driver. So, that may be the place to start. The full driver error message is just the Microsoft description for the Winsock error code 10038:

    2019-08-01 14:21:03.125 +05:00 [TRACE] [CORE       ] [0x2d54] [IOServer        ] [(GLOBAL)        ] [DrvDebug()                                        ] [dsp_fmt.cpp                   ] [533 ] Tcpip Driver Error: 10038 (0x2736) Length 214 Socket operation on non-socket. An operation was attempted on something that is not a socket. Either the socket handle parameter did not reference a valid socke t, or for select, a member of an fd_set was not valid.

    That can happen if the software (Citect TCPIP board driver or MODNET driver) closes the Winsock connection, then tries to use that invalid connection. That may be a bug in the Citect driver. I don't know which version of the TCPIP driver is installed, but you may want to install the latest TCPIP driver. It has some recent fixes, but doesn't specify what they all are. I see from the log file you have MODNET v2.09.07.00001. There is an updated MODNET driver available. I don't see a fix for that specific error, but it may be worth trying that also.

Children
No Data