Crashing Production Server

On Friday I updated my live solution on production at my big client and ever since, massive problems in the log that eventually spiral into no one being able to log into the solution. I just rolled back to Friday morning’s solution, more info as it becomes available on whether the problem is gone. If so, obviously something in my solution – but what would cause THIS:

Servoy (was 3.5.8, still doing it in 3.5.9) is creating tables in my solution database, not in the repository, called TEMP_9175693866 (and other 10 digit random numbers) that it then cannot drop. I can see them in SQL Server 2005, where both my solution and repository are hosted.

2009-04-08 07:57	TaskExecuter[0]	ERROR	com.servoy.j2db.util.Debug	drop table TEMP_9175693866	
java.util.NoSuchElementException: Timeout waiting for idle object 
     at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:801) 
     at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:110) 
     at com.servoy.j2db.persistence.datasource.i.getConnection(Unknown Source) 
     at com.servoy.j2db.persistence.Server.getUnmanagedConnection(Unknown Source) 
     at com.servoy.j2db.dataprocessing.SQLEngine$UpdatePerformer.run(Unknown Source) 
     at com.servoy.j2db.util.as.run(Unknown Source) 
     at java.lang.Thread.run(Unknown Source)

The two big things I did in this version of my solution were to turn on Servoy’s ability to go into find mode non-programatically, using control/command-F on three screens, in a very controlled way – only on three screens with all navigation disabled until they execute the find. Here’s a pic of the temp tables in SQL Server:

about that pooling problem
Do you use transactions? How many connections are used on the admin pages for the specific servers?
How big is the max connections per server?

Temp tables are created by Servoy when you load big pk sets into a foundset, to prevent problems with too long SQL “IN” statements
From you post it seems you are running out of database connections, try to set the allowed connections to 20 instead of default 10 (especially when using long during transactions in your application)

Thanks very much Jan – I knew it was that feature (trying to set a large dataset) that was causing this, and yes I did have my max connections set too low. Both problems I changed last night, but your email totally made me feel secure in pushing this solution to production again tonight (with the load of pk datasets commented off). Such great support from Servoy! Overnight responses from the CTO/Architect. Nothing like it. Really appreciated.

ellen