Wednesday, February 8, 2012

Everest: The number of users that simultaneously access SDK cannot exceed the 25 user(s) for this license

I have a client for which I use the Everest SDK to connect to the Everest database from a web application.  Last week, we started getting this error on the site:

"The number of users that simultaneously access SDK cannot exceed the 25 user(s) for this license"

Essentially, all 25 allowable connections were used up, so my web pages couldn't connect to do anything.  So none of the pages on the site that connected to Everest would work.

I thought that maybe I had a place in my code where I wasn't closing a connection and the open connections had built up to 25.  The SDK has a Clear method to clear sessions, and can be accessed from the SDK object browser, so I figured I'd just go in there and clear some sessions.  The catch was that I couldn't even log into the SDK object browser because there were no connections left to log in with.  We tried rebooting the Everest server, we tried rebooting the web server, but neither one cleared the sessions.

Finally we filed a support ticket.  After a couple days, we received this reply:

"I wanted to reach out to you to give you an update on your ticket.
You wanted to remove user session of SDK.
Please ensure all users are logged out from Everest.
Please open SQL Server Management Studio and select database EVEREST_SYSTEM .
Select 'New Query' and run the command "Delete from EVEREST_SPM" .
"

That did the trick.  All connections were cleared and the web site was able to connect to Everest again via the SDK.  The support technician also said that SDK connections are not separate from normal Everest connections.  So that makes it sound like the problem could have been solved by just forcing a few Everest application users to log out.  Seems like the reboot would have done that.  But we'll look into that solution more next time it happens.