Recordset.Open Causes Lockup/Timeout



Hi,

I was/am having a problem with a web hosting company (verio.com) running Windows
Server 2003. The problem is as follows:

The site I am working on (http://www.codebot.org) uses active server pages to loaded
up various rss feeds and parse them into pretty response documents. This works great
for server side xml requests when the request is outside of my domain, but when I
make a request within my domain (to the same server), the request for the xml
document timesout or locks the server.

So:

Client Browser requests Page "A"
Page "A" will request Page "B"
Page "B" builds and XML response and return it to Page "A"
Page "A" returns the final response to the Client Browser

You can see the result by visiting http://www.codebot.org "Most Popular Content" area

Here a concise version how Page "A" works:
/rss/test.asp on mydomain

<%@ language="jscript" %>
<%
function getRss(url) {
var xmlRequest = Server.CreateObject("Msxml2.ServerXMLHTTP");
var document = Server.CreateObject("Microsoft.XMLDOM.1.0");
var xml = "";
xmlRequest.open("GET", url, false);
xmlRequest.setRequestHeader("User-Agent",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716
Firefox/1.0.6");
xmlRequest.setRequestHeader("Accept", "text/xml");
xmlRequest.send();
document.async = false;
document.load(xmlRequest.responseBody);
xml = document.xml;
xmlRequest = null;
document = null;
return xml;
}

Response.ContentType = "text/xml";
Response.Write(getRss("http://mydomain/rss/list.asp";));
%>

And Page "B":
/rss/list.asp on mydomain

<%@ language="jscript" %>
<%
var connection = Server.CreateObject("ADODB.Connection");
connection.Open("DSN=blah");
var recordset = Server.CreateObject("ADODB.Recordset");
recordset.ActiveConnection = connection;
recordset.Source = "select '<doc>Hello World</doc>' as [result]";
recordset.Open();
Response.Write(recordset.Fields("result").Value);
recordset.Close();
recordset = null;
connection.Close();
connection = null;
%>

Obviously there is more to the pages than above, but these scripts duplicate the
problem.

I have tracked down the exact line where everything locks up. It's where I attempt to
open the recordset in Page "B". Just so you know, the DSN maps to an Access mdb file.

If I load Page "B" from the browser it works fine, but there is something about my
web host's configuration that causes the call to recordset.Open to lock the server
when called from Page "A".

On my home server I do not have this issue, so believe it has something to to with my
web host's configuration.

Could anyone please tell me why the second request fails when opening the recordset?

FWIW: I am able to get around the issue by writing Page "B" as an asp.net page.


.



Relevant Pages

  • Re: Recordset.Open Causes Lockup/Timeout
    ... Thanks for the tip on the responseXML property. ... // when the request comes from the same server ... This problem is only occuring on my web host's server where direct machine access is ... This works great for server side xml requests ...
    (microsoft.public.inetserver.asp.db)
  • Re: design choice: multi-threaded / asynchronous wxpython client?
    ... is definitely time of server response to my request and bears no ... relation to when the live XML data was updated. ... It looks like the data is dynamically generated on the server, ... then re-request the doc (a download resume is risky, ...
    (comp.lang.python)
  • [REVS] NTLM HTTP Authentication is Insecure By Design
    ... in front of a web server, and that proxy server shares a single TCP ... These are attacks that make use of non-RFC HTTP requests (HTTP Request ... the authentication is associated with the ...
    (Securiteam)
  • Re: Convert .net xmlhttp code to vbs
    ... but I need to post the xml to a .jsp file on a unix box. ... returns an internal server error. ... // create a web request and set the method of the request to POST ... HttpWebRequest request = ...
    (microsoft.public.scripting.vbscript)
  • [NT] 04WebServer Multiple Vulnerabilities (CSS, Log File Injection, AUX DoS)
    ... 04WebServer is a HTTP server developed by Soft3304 for Windows platforms. ... Characters into Log File ... filtering on the request URL before writing it into the log file. ... following HTTP request, when submitted to a vulnerable 04WebServer, will ...
    (Securiteam)

Loading