Archived

This forum has been archived. Please start a new discussion on GitHub.

error info of Ice.ThreadPool.Server

in my application on Ice, I set the property of Ice_ThreadPool.Server to 4, but when I run serval clients less than 2, the server side will show some warn info such as:
thread pool "Ice.ThreadPool.Server" is running low on threads size =4, sizeMax = 4, SizeWarn = 3
but if run more than 3 clients, the server would down with error info as:
kgepop: no error frame to pop to for error 21500

but if I do not set the "Ice.ThreadPool.Server", there is no any problem, why?

Comments

  • marc
    marc Florida
    If you do not modify Ice.ThreadPool.Server.Size, then the default will be used, meaning just one thread, and no warnings. Therefore you don't see any warnings.

    The error message "kgepop: no error frame to pop to for error 21500" does not originate from Ice, so you must check your own application code for the cause. Since the error message does not appear if you use only one thread, my guess is that the error message is being caused by the application not being thread safe.

    You get the warning message whenever the number of threads used from the thread pool reaches Ice.ThreadPool.Server.SizeWarn. Please see the Ice manual for more information on this property. Note that threads are not only used for dispatching requests, but also for accepting new connections.