Connect. Communicate. Collaborate. Securely.

Home » Kerio User Forums » Kerio Connect » High CPU usage and slow e-mail content display in Outlook
  •  
Heledar

Messages: 2
Karma: 0
Send a private message to this user
Hi everyone,

I've got users complaining very bad performance in Outlook on our new RDS servers (running Windows Server 2012 R2) so I've started investigating the problem and here it is:
Basically e-mail content takes a while to load when they switch from one e-mail to another (it can take up from 2 to 10+ seconds). I've noticed that the kerio outlook connector process can go up to 15% or 20% CPU usage. I find this weird because we don't have any of those issues on our old RDS servers or on our workstations.

Has any of you had the same problem and found a solution ?
  •  
Heledar

Messages: 2
Karma: 0
Send a private message to this user
So I seem to have found (part of) the problem: the database query takes pretty much 7-8 seconds.

Is there any way to solve this problem ?

Here are some log messages for the proof:
[04/07/2016 11:12:17.208](15924){dbg}{mapi-interface} Start of MAPITableImpl::QueryColumns

[04/07/2016 11:12:17.208](15924){dbg}{mapi-interface} End of MAPITableImpl::QueryColumns, result = 0x00000000

[04/07/2016 11:12:17.208](15924){dbg}{mapi-interface} Start of MAPITableImpl::SetColumns

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:167 (SqlAstConditionNode::optimize)
[#27261] (9447)                           Non-optimized query: SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:187 (SqlAstConditionNode::optimize)
[#27262] (9447)                           After optimization (opReduceTables): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:209 (SqlAstConditionNode::optimize)
[#27263] (9447)                           After optimization (opTableJoins): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:230 (SqlAstConditionNode::optimize)
[#27264] (9447)                           After optimization (opCreateNestedSelect): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:254 (SqlAstConditionNode::optimize)
[#27265] (9447)                           After optimization (opRemainingMergeableTables): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:275 (SqlAstConditionNode::optimize)
[#27266] (9447)                           After optimization (opTableJoins): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\SqlAstNodes.cpp:295 (SqlAstConditionNode::optimize)
[#27267] (9447)                           After optimization (opBooleanEquivalence): SELECT ... FROM ...recipient o WHERE o.object_version = ?

[04/07/2016 11:12:17.209](6040){dbg}{sql} In DbServer\QueryConstructor.cpp:226 (QueryConstructor::createQuery)
[#27268] (9447)                           Optimized query: SELECT o.x30000003 as rowid, o.object_version as messageVersion, 0 as mv_index FROM recipient o WHERE o.object_version = ?

[04/07/2016 11:12:24.358](10112){dbg}{table} In DbServer\DbTable.cpp:735 (CDbTable::AS_findRow)
[#27269] (9447)                              findRow finished: table=0B7AD8C8-{FBCDE28C-17B0-4163-B0FB-D3016745F62B}-me, from bookmark=00000001, forward=true, predicate=class DbTablePredicate::DbFindPredicate, hres=8004010f

[04/07/2016 11:12:24.358](11152){warn}{mapi-interface} In StoreProvider\MAPITableImpl.cpp:314 (MAPITableImpl::FindRow)
[#27270] (9447)                                        HRESULT: 0x8004010f MAPI_E_NOT_FOUND

[04/07/2016 11:12:24.359](11152){dbg}{mapi-interface} End of MAPITableImpl::FindRow, result = 0x8004010f
  •  
Maerad

Messages: 147
Karma: 29
Send a private message to this user
Heledar wrote on Mon, 27 June 2016 14:53
Hi everyone,

I've got users complaining very bad performance in Outlook on our new RDS servers (running Windows Server 2012 R2) so I've started investigating the problem and here it is:
Basically e-mail content takes a while to load when they switch from one e-mail to another (it can take up from 2 to 10+ seconds). I've noticed that the kerio outlook connector process can go up to 15% or 20% CPU usage. I find this weird because we don't have any of those issues on our old RDS servers or on our workstations.

Has any of you had the same problem and found a solution ?


Ok, that seems interesting ... X_x
Sure your anti-virus solution doesn't watch the KOFF Cache folder? That could result in the lag.

Here's how we deployed it, and it's fast as hell:
http://forums.kerio.com/m/108341/#msg_108341

  •  
Pavel Dostal (Kerio)

Messages: 171
Karma: 3
Send a private message to this user
Database query can take much more than 7 seconds, however such query shouldn't be used when switching between messages. I can't confirm that log shows such delay (log is too short and displayed data is not very useful, as the 7 seconds difference is between logs from different threads), nevertheless such issues are mostly caused by heavy load of disk.
Unless you have very fast disk or very small KOFF database, users' actions make disk working so hard, that any other request takes ages.

Pavel Dostal
Kerio Technologies
Previous Topic: Problem with Outlook 2007 / Contactlist in Public Folder
Next Topic: missing in Kerio connect
Goto Forum:
  


Disclaimer:
Kerio discussion forums are intended for open communication between forum members and may contain information and material posted by members which may be useful in learning about Kerio products. The discussion forums are not intended to provide technical support for any specific product. Any information implied or expressed in the discussion forums is that of the posting member. Kerio is in no way responsible for the information posted in the forums, or its accuracy. Kerio employees may participate in the discussions, but their postings do not represent an offical position of the company on any issues raised or discussed. Kerio reserves the right to monitor and maintain the forums to promote free and accurate exchange of information.

Current Time: Thu Dec 08 08:51:28 CET 2016

Total time taken to generate the page: 0.00782 seconds
.:: Contact :: Home ::.
Powered by: FUDforum 3.0.4.