on 2016 Jul 05 5:49 PM
We are currently looking at the new Cockpit monitoring utility in 17.0.4.2053 and it seems like it could be quite useful. The documentation says "it is designed to run continuously in the background so that you can connect to it when needed." However, we are finding that whilst it is running it is causing excessively high CPU usage, spiking at above 85% for short periods of time and triggering it's own alerts. Stopping the Cockpit, causes the processor usage to drop right back down to nearly zero. There is nothing else that can be causing this as the Cockpit is the only connection to dbsrv17.exe and it is this process that is using all the CPU time. Is there something that needs to be changed to allow this to run without maxing out the CPU, or is this just not ready for prime time yet?
Hi RobertW,
Could you tell me the configuration of the machine you are using. How many cores does it have and how much memory? Did you change any of the configuration settings in the cockpit? A clear description of exactly what you are doing to run it would be helpful. Did using a temporary database change anything?
thanks, Paul
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I haven't checked this with a blank temporary Cockpit database yet. I will try this tomorrow and report back. The Virtual Server it is running on is Windows Server 2008 R2 with two cores, and 8GB RAM. However, our application is 32-bit, so the RAM available to it is obviously limited to 4GB. There is barely anything else running on the Virtual Server as it is dedicated to serving our application. We are running dbsrv17.exe as a service and it is using the following additional switches: -gdall -xtcpip -ti0 -c50p -gnh100 -cdb "start=yes;dbf=Cockpit.db". We changed some configuration settings inside Cockpit to setup email alerts, but that is about it. Nothing I would call particularly non-standard or out of the ordinary.
I started the Cockpit with a new blank database today and immediately found that the high CPU usage was no longer occurring. I then reverted to the original Cockpit database only to see the CPU spiking issue return immediately. This clearly indicates that there is something either wrong with the original Cockpit database, or there is some configuration change that we have made that causes a bug to be exposed that is not seen by default when starting the Cockpit. I will continue to investigate this to see if I can pinpoint the exact cause. However, if anyone can offer any suggestions as to what settings might potentially cause this and I should therefore be taking a closer look at within the Cockpit, it would be most appreciated.
I have configured the new blank database exactly the same as the original database with the problem and it does not exhibit the same behaviour. Other than the fact that one contains logging data and the other doesn't, I looked to see if I could find anything else that was different between the two databases. I found one thing, which I believe may be significant. The original database with the problem shows no connections to it, whereas the new one without the problem shows 'INT: StmtPerfMngrConn'. No matter how many times I start and stop the Cockpit database, this connection does not appear in the original database with the problem, but always appears in the new blank database without the problem. Can someone suggest why this is missing, why it is not automatically created when the Cockpit starts, or a way to reinstate it, as I suspect this may be the cause of the problem. Also any suggestions as to how this has gone missing?
Some additional information. I tried dropping 'INT: StmtPerfMngrConn' to try and reproduce the effect of running the Cockpit without this connection and it appeared to have no ill effect until I stopped and restarted the Cockpit. The result being after restarting that I am no longer able open the Cockpit database at all and needed to create a new one. Therefore, how the original problematic Cockpit database is functioning at all without that connection mystifies me.
Ah, yes it would appear that one of the test databases is still 17.0.0.1358, before we went into production with 17.0.4.2053, and has not been unloaded-reloaded. In that case there is no difference that I can see between the problematic original Cockpit database and the new Cockpit database without the problem other than the original one contains about 50MB of logging data.
Restarting the database service brings back 'INT: StmtPerfMngrConn' on the 17.0.4.2053 database. Therefore I am no further forward, as I can find no difference between the problematic original Cockpit database and the new one that does not have the problem. Can anyone suggest what line of investigation to go down next? Short of simply dumping the problematic Cockpit database and using a new one, which we could do, I don't know what else to try. However, this doesn't get to the cause of the problem or give me confidence that we won't see this again at some point.
I am still looking into this and have yet to figure out what has caused this odd behaviour with the one affected database, which I have yet to reproduce with another database. I did have a thought and this troublesome Cockpit database was in use and running whilst also running the Profiler. I am therefore wondering if this could have impacted it in any way? Is it OK to run the Cockpit and Profiler at the same time?
User | Count |
---|---|
68 | |
8 | |
8 | |
6 | |
6 | |
6 | |
6 | |
6 | |
6 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.