Hello!
System:
SunOS 5.10
top:
Memory: 64G phys mem, 2118M free mem, 80G total swap, 80G free swap
Last week we upgraded to version OE11.32 .
In tests all was OK, but in production we have client-session crash with the following error:
SYSTEM ERROR: Too many sub-processes, cannot fork. Errno=12. (358)
Errors in DB.lg file:
[2014/10/28@05:46:43.904+0200] P-17048 T-1 I SRV 10: (9450) bkioWrite:Insufficient disk space during write, fd 18, len 8192, offset 23, file DBI1Q4aa4v.
[2014/10/28@05:46:43.904+0200] P-17048 T-1 I SRV 10: (14658) Previous message sent on behalf of user 296, server pid 17048, broker pid 16394. (5512)
[2014/10/28@05:46:43.943+0200] P-17048 T-1 I SRV 10: (6072) SYSTEM ERROR: error writing, file = DBI1Q4aa4v, ret = -1
[2014/10/28@05:46:43.943+0200] P-17048 T-1 I SRV 10: (14658) Previous message sent on behalf of user 296, server pid 17048, broker pid 16394. (5512)
[2014/10/28@05:46:44.022+0200] P-17048 T-1 I SRV 10: (291) Insufficient disk space or Write access denied.
[2014/10/28@05:46:44.022+0200] P-17048 T-1 I SRV 10: (14658) Previous message sent on behalf of user 296, server pid 17048, broker pid 16394. (5512)
We found, that we had insufficient RAM/DISK space(swap).
After SWAP enlargement there is no errors again, but the question is:
Is there some TEMP-files enlargement in OE11 vs OE10 ?
There are more VSTs etc in v11, but I'd be surprised if this had the effect you are seeing. What was user 296 doing at the time of the crash?
After procore/protrace files analysing we found that there is
"input through" statement in crash-line.
We know, that "input through" makes process fork and tryes to allocate the same memory hole as parent, but in OE10 we haven't this to be a problem...
The error message makes it seem like you ran out of space in your temporary directory. Double check what -T is set to and make sure you have plenty of space available.
Since 10.1B the -tmpbsize default has been 4 (4K blocks) instead of 1 (1K blocks).... so unless you upgraded from an earlier version of V10 there shouldn't be a substantial DBI file changes.
Double check what the various startup/client parameters are set to and make sure you didn't lose any settings.
Problem solved!
Caution:
Connect to SonicMQ with -SMQConnect starts JAVA thread which reserves too many memory.
Adding parameters -Xmx / -Xms to
/pro/properties/AdminServerPlugins.properties
[PluginPolicy.Progress.SonicMQ]
pluginclasspath=/pro11.32/sonic/MQ8.0/lib/sonic_Client.jar,/pro11.32/sonic/MQ8.0/lib/mgmt_client.jar,/pro11.32/java/progress.jar
classpath=/pro11.32/sonic/MQ8.0/lib/sonic_Client.jar,/pro11.32/java/progress.jar
jvmargs=-Xmx256m -Xms256m
solved the problem.
Another question about this JAVA thread:
Why JAVA thread runs after
RUN deleteSession IN pubsubsession.
?
Thank You All !