Server Out Of Memory Errors - Will Erasing Arrays Make A Difference?
We're getting "ERROR (0x8007000E) Not enough storage is available to
complete this operation" errors on a fairly large, busy ASP/SQL Server web
site. The error is being thrown on a line calling oRs.GetRows() on one of
our busiest pages. The array returned from the GetRows() call will be
'cleaned up' when the page goes out of scope, but I wonder if we should be
calling Erase specifically after the last usage to explicitly free allocated
memory. Is there any actual benefit doing this cleanup explicitly? I've
always throught that ASP's memory deallocation was a bit spotty - can anyone
comment.
I am trying to write a search script in my spare time at work. We have a knowledge base consisting of 200+ .mht files. My script was working ok when I was testing it on just a few files but I am getting out of memory errors trying to search through the whole KB. Here is the search code:
I have the following codes working fine on one PC running Win2000 Server, but fails on another PC running WinXP. When I check the system log, it tells me the problem is on line 8, that is :-
I am getting the following error from my ASP application: Microsoft VBScript runtime error '800a0007'
Out of memory: 'Server.CreateObject'
It always (as far as i have observed) occurs when i try to create a new ADODB.connection object in my cCon helper function (opening a connection and returning it):
Function cCon() Dim cnRet set cnRet = server.createobject("ADODB.Connection") 'This is where the error is thrown cnRet.connectionstring = GLB_CONSTR_DB cnRet.open Set cCon = cnRet End Function
The page that errors will typically call this function 6- 10times from different functions which handle their connections in this way: Code:
We are running asp (not asp.net) and vb com dll web sites on a machine which also has sql server 2000 sp3a running and uses Windows Server 2003. We recently migrated from Windows 2000 (same database) where we had no problems. However on the new machine, despite much being much more powerful and having the same usage, the box is periodically grinding to a halt. The cause seems to be sql server using excessive amounts of memory, it steadily builds up to after a reboot to a high level. This seems to point in the direction of a memory leak, is anyone aware of any such problems with asp/sql server on windows 2003 and how to diagnose/fix them. I am aware of some unclosed connections in the asp code and objects that have not be set to nothing but this did not seem to cause a problem in the old machine and it is not practical to fix them all in the short term. I thought it might be unclosed connections although when I looked at SQL Server:General Statistics and User Connections I did not seem to see a large or increasing number of connections.
3 workstations previously installed and able to access server.
4th workstation am able to map to server access files but when attempting to log in receive the following error.
EXTERNAL DATABASE OPEN FAILURE Error: -2147467259[Microsoft][ODBC SQL Server Driver][Shared Memory]SQL Server does not exist.
The workstation that is unable to connect is running XP SP2, MDAC 2.7.. the difference btwn this and the others is that it is running wireless. Ruled out wirelss as being the problem because hooked LAN cable and receive the same error. Code:
I am hosting hundreds of websites on a webserver using a combination of sql and asp. SQL is on a different server. The web server is running win 2003 iis 6 with a single processor and 1 GB Ram. All websites are in 1 app pool.
I find that i get out of memory errors or no new sessions are created when the virtual bytes for an App pool starts to breach over 1500mb. So i recycle the App pool at a limit of 1500mb.
This leads to the app pool recycling 1-2 times a day. Typically the Private Bytes counter is saying 293mb and virtual bytes is 1438mb. I don't know whether this is a leak somewhere in ASP or normal with IIS but the virtual bytes only seems to increase over time and not stablise or go down as i would expect when users visit and leave a website.
I have a script that i use to let uses download files from the server. It uses the response.binarywrite method. If i download a large files (i.e. over 100mb) then i see a big jump in the virtual bytes that IIS allocates in the w3wp.exe process. This does not appear to go down after the file has been downloaded although Private Bytes goes up and then down initially. I was thinking that this may be a cause of the problem?!
....or maybe it is typical for these types of large scale ASP applications? Would increasing the main memory RAM to 2GB help in this situation. The main Physical Memory still reports about 300mb free when i get the memory problems?
Would it help to split the websites into a couple of different App Pools, then increase the page file size to something larger and hence each App pool gets to use a separate 2GB memory space? Would i benefit from moving to Windows 64bit edition and installing more Ram and having a large Page file to cope with the large Virtual Bytes?
Can anyone offer some guidance who have had similar issues with hosting their sites?
i always get this in IIS 5.0 (running in windows 2000 advanced server) everytime the browser loads an ASP page.. but i don't get it when i run IIS 5.0 in windows 2000 professional.
Server Application Error The server has reached the maximum recovery limit for the application during the processing of your request. Please contact the server administrator for assistance.
Server Application Error The server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the server administrator for assistance.
The aim is to get it working on this machine so I can port everything to a Enterprise Version but can't get around this error for the last two days. Code:
Can anybody shed any light on this issue ??? Or even ways of temporaily getting around it ???
FISH is an ASP application which uses a WSC object called "finapps.fishapp" to handle the requests to the database. The WSC is created in the GLOBAL.ASA as a Session object using the following line:
The finapps.fishapp object creates an "ADODB.Connection" object that is held open while the session is running, and the Session_OnEnd event should call a method of that object that closes the connections
The website falls over only when there has been a period of inactivity greater than the length of the session timeout, and also after there has been a significant amount of traffic prior to this!
The problem we have only occurs for one of our clients, but occurs seemingly randomly on all 4 of their servers. The returned results of the error are as follows: ----------------------------------------------- Active Server Pages error '8002802b'
Create object failed
An error occurred while creating object 'fish'. Microsoft VBScript runtime error '800a0007'
Out of memory: 'fish' //global.asa, line 36 ------------------------------------------------
At least once per day I am receiving this error on this specific page.
"Error: File /customer/record.asp Unexpected error. A trappable error (C0000005) occurred in an external object. The script cannot continue running.."
This page gets hit thousands of times per day yet it usually only logs one incident of this error per day.
I have checked every resource and made all the recommended fixes but it still occurs.
This page uses some ADODB connections, Jmail, and sets a few cookies. I cannot reproduce the error. I have no clue as to what it could be. All code is sound and works correctly.
I'm trying to write data from a form using a text box (textarea) that has a return after each item. For example:
Join Bytes! Join Bytes! Join Bytes! Join Bytes!
I'm getting the data written to the SQL server table fine, but every item after the first is getting written with a special character preceeding the email address that looks like a little box. What is it, why is their there and how do I remove it?
i creat one sql server and want another computer on my lan run my web server (i mean the computer on lan can insert data and store to my sql server)but i don't know to do that .i used windows 2003 and IIS6.
I have been looking around at various design solutions for uploading a file using ASP and have found that many sources have devised a much simpler plan using ASP.NET.
My question is this, I have a box running Win2k Advanced Server, with the .NET framework installed. WIll that enable me to run some of the new functions etc. decribed in ASP.net ??
So I need to write the difference between the biggest and the smallest number in database table. I know that I need to take MAX and MIN from table, but I just can't get it work.
Example:
Let's say max = 5 and min = 1, I need to have it like this: 5-1=4 (max-min=total)
is there anybody know to code the time difference in asp? i used timediff, it returned a date, it should return a time actually. i tried the command in mysql n it's fine. but it's error when i switched to ASP. i hv refered to alot references such as sql time manual n other sites. but stil fail to find ans.
I'm writing an ASP app that administers an ISA server remotely. The fact that it's an ISA server isn't my problem I believe. My question? What is the security difference between disabling anonymous access and using account X from the web client, versusallowing anonymous access but using account X as the account that runs the application?
When I configure my web application to allow anonymous access, but set the anonymous process to use account X, my ASP code works (the ASP code can administer my ISA Server). When I disable anonymous access, and I log into the web application using the same account X I mention above, I get an error 80070005 when my ASP code tries to connect to my ISA server to administer it. I would think the above two options would be equivalent, but they're not. What is the difference?