Msxml2.ServerXMLHTTP OLE error

453 views
Skip to first unread message

dmajkic

unread,
Aug 19, 2020, 9:45:49 AM8/19/20
to Harbour Users
Greetings.

We are using "Msxml2.ServerXMLHTTP" to send some JSON to remote server.
Using hbwin contrib, creating OLE control.

We are sending hundreds of docs, one after another.
Procedure instanciets OLE  object in LOCAL variable, sends, and that is
repeated for every documnet.

On some servers - we have issue that after 150 docs - we receive error

Error WINOLE/1007  An error occurred in the secure channel support?
  (0x80072F7D): msxml3.dll                      
  (DOS Error -2147352567)

If we change destination URL from https to http - error occurs a bit later,
after 500 sent docs.

This issue happens on two servers with Windows 2012R2. We did not
have error on newer Windows, but we are unsure if it just takes more docs to send.

Did anybody else had similar issue?

If the issuse is that we are creating too much OLE objects that are
still somehow not Garbage Collected, is there a way to force Garbage
Collection (GC) on unused (marked) OLE variables?

José Quintas

unread,
Aug 19, 2020, 9:51:21 AM8/19/20
to harbou...@googlegroups.com

May be the change after Windows 2000, that reduce half open connections from 67.000.000 to 8.

This, and connection do not close immediatly, and becomes half open too.

Do you try to use allways the same connection?

Note: this can occurs with any connection, including MySQL, if you use several open()/close().


José M. C. Quintas

--
--
You received this message because you are subscribed to the Google
Groups "Harbour Users" group.
Unsubscribe: harbour-user...@googlegroups.com
Web: http://groups.google.com/group/harbour-users

---
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to harbour-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/harbour-users/5faa849b-28ef-4f1e-aeae-3997781c2c63n%40googlegroups.com.

dmajkic

unread,
Aug 20, 2020, 10:36:15 AM8/20/20
to Harbour Users
Thank you José!

Your hint to half-open connections led me to check what network connections do msxml3.dll open,
and I found a huge number of TIME_WAIT connections, which where created (and killed-off after 30sec)
Since recieving side is also our server, I tweekd Apache2 settings (KeepAlive On, and increased number
of active servers and number of worker threads, and filtered TLS lists), it than worked as it manages to
reuse tcp connections. Now I can see only 3-4 opened connections, regardles of number of douments
sent (eg. 200-500).

This issue happened only on older Windows (Server 2012 R2). It could be also that "Msxml2.ServerXMLHTTP",
which uses older msxml3.dll have some subtile bug. It occured to me that I could also force newer msxml6.dll
via simle OLE creating object "Msxml2.ServerXMLHTTP.6.0", but since medecine above worked - I didn't try.
Reply all
Reply to author
Forward
0 new messages