Hi
benknowles30
Thank you for sharing the log with me, first of all I want you to know this issue is not cause by 3CX but the infrastructure its running on. You said its a virtual machine and you have shared virtual machine specs with me. Can you please share the actual host specs with me:
How much Ram, CPU type total number cores also the most important one, what type of storage are you using. Is it SSD, SAN, standard computer disk mechanical, server grade hardware RAID with 10k or 15K RPM disks.
What is important to understand is too often we virtualise without considering the underneath hardware capacity. For example if the actual physical box have standard HDD 7200 RPM then the through put of that disk is not enough to run two or more VM in production specially if the VM is running structure data like SQL.
Even if you have good SSD storage you need to make sure you thick provision the disk instead of thin if its running any type of database.
If you think hardware is good, please make sure when you create virtual machine you assign single socket and 4 cores not 4 socket one core each something you may over looked in VMware system.
If the storage and hardware is good, create VM disk with thick provisioning, backup your 3CX, install 3CX again using the backup and restore.
Let me know if this help, happy to investigate further.
Looking at the log i think your database is crashing and that is why the CPU , see system log below.
019/04/11 15:55:29.646|3452|0011|Erro|CHR: Worker thread caught exception: System.InvalidOperationException: This NpgsqlTransaction has completed; it is no longer usable.
at Npgsql.NpgsqlTransaction.CheckCompleted()
at Npgsql.NpgsqlTransaction.<Rollback>d__21.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Npgsql.NpgsqlTransaction.Rollback()
at CallHistoryReceiver.DBAccess.CancelTransaction()
at CallHistoryReceiver.JoinedCall.SaveToDB(CallFlowParser parser)
at CallHistoryReceiver.CallFlowParser.ProcessFlows()
at CallHistoryReceiver.CHReceiver.WorkerMethod()
2019/04/11 15:55:29.667|3452|0011|Excpt|CHR: Npgsql.PostgresException (0x80004005): 57P03: the database system is shutting down
at Npgsql.NpgsqlConnector.<DoReadMessage>d__157.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()