I'm getting an 'ODBError: Maximum number of clients reached'. There aren't any instances of ODBTransaction, but there are 160 open instances of OmniBase. I don't seem to have anything holding onto these, but 'Smalltalk garbageCollect' doesn't get rid of them, and '(OmniBase allInstances select: [:ea | ea isOpened]) first close' crashes Squeak immediately :(
Any help would be greatly appreciated :o)
Brian.
I'm not sure what your setup is doing to get into this state (some cleanup must not be happening), but I can hazily remember that to get out of it you'll want to get rid of the excess .usr files on disk (and probably do 'OmniBase closeAll').
When using ODB, we've generally used a connection pool approach to managing clients.. if it's useful we could throw our ODBSupport package over the wall (including ODBSPool).
Andrew
On 11/2/05, Brian Murphy-Dye brian.murphydye@mac.com wrote:
I'm getting an 'ODBError: Maximum number of clients reached'. There aren't any instances of ODBTransaction, but there are 160 open instances of OmniBase. I don't seem to have anything holding onto these, but 'Smalltalk garbageCollect' doesn't get rid of them, and '(OmniBase allInstances select: [:ea | ea isOpened]) first close' crashes Squeak immediately :(
Any help would be greatly appreciated :o)
Brian.
Andrew,
The closeAll kills Squeak as well. I deleted everything in the 'Users' directory and got the same error. Then deleted the '.usr' file, allowed it to be recreated, and then received a 'Bad header' error. I haven't been making changes to the database, so I copied an archived version and was allowed access to the data, so it isn't a critical situation anymore!
I'd love to see your ODBSupport package. Let me know if you put it up somewhere.
Thanks, Brian.
On Nov 2, 2005, at 11:51 AM, Andrew Catton wrote:
I'm not sure what your setup is doing to get into this state (some cleanup must not be happening), but I can hazily remember that to get out of it you'll want to get rid of the excess .usr files on disk (and probably do 'OmniBase closeAll').
When using ODB, we've generally used a connection pool approach to managing clients.. if it's useful we could throw our ODBSupport package over the wall (including ODBSPool).
Andrew
On 11/2/05, Brian Murphy-Dye brian.murphydye@mac.com wrote: I'm getting an 'ODBError: Maximum number of clients reached'. There aren't any instances of ODBTransaction, but there are 160 open instances of OmniBase. I don't seem to have anything holding onto these, but 'Smalltalk garbageCollect' doesn't get rid of them, and '(OmniBase allInstances select: [:ea | ea isOpened]) first close' crashes Squeak immediately :(
Any help would be greatly appreciated :o)
Brian.
Or we could merge it into the OmniBase on squeaksource.... we should definitely put it up somewhere (I sort of thought we already had) as I wouldn't want to use omnibase without it.
Julian
Andrew Catton wrote:
I'm not sure what your setup is doing to get into this state (some cleanup must not be happening), but I can hazily remember that to get out of it you'll want to get rid of the excess .usr files on disk (and probably do 'OmniBase closeAll').
When using ODB, we've generally used a connection pool approach to managing clients.. if it's useful we could throw our ODBSupport package over the wall (including ODBSPool).
Andrew
On 11/2/05, *Brian Murphy-Dye* <brian.murphydye@mac.com mailto:brian.murphydye@mac.com> wrote:
I'm getting an 'ODBError: Maximum number of clients reached'. There aren't any instances of ODBTransaction, but there are 160 open instances of OmniBase. I don't seem to have anything holding onto these, but 'Smalltalk garbageCollect' doesn't get rid of them, and '(OmniBase allInstances select: [:ea | ea isOpened]) first close' crashes Squeak immediately :( Any help would be greatly appreciated :o) Brian.
On Nov 2, 2005, at 2:01 PM, Julian Fitzell wrote:
Or we could merge it into the OmniBase on squeaksource.... we should definitely put it up somewhere (I sort of thought we already had) as I wouldn't want to use omnibase without it.
Yeah, there have been some other OmniBase patches that would be good to merge in as well. What I'm concerned about is licensing - OmniBase is "free beer" now but not "free speech", and I don't see that we have any particular rights of modification and redistribution. I emailed David Gorisek about this but haven't heard back.
What might work better is to maintain a separate package on SqueakSource that provides extensions and overrides for OmniBase, without touching David's original distribution.
Avi
squeak-dev@lists.squeakfoundation.org