[turba] Turba H3 (2.1.3), PHP 5.2, 150, 000+ address book - indefinite stall
James MacLean
macleajb at ednet.ns.ca
Mon Jan 1 07:13:28 PST 2007
Hi Folks,
We have been running IMP for quite some time and just started opening up
the full power of Horde ;). The problem I am reporting has been seen on
multiple Intel systems (running 32 and 64bit), but the biggest engine
showing this problem is :
. Linux 2.6.19
. x86_64
. 4 CPUs
. 8G RAM
. Apache 2.2.3
. php 5.2 and 5.2.1RC1 (5.1 actually seems to complete, just slow)
. php memory_limit 1024M (Just to be sure)
Address Book (turba)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=turba> H3 (2.1.3)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=turba> Application
is ready.
Bookmarks (trean)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=trean> 0.1-cvs
<http://staff.ednet.ns.ca/admin/setup/config.php?app=trean> Application
is ready.
Calendar (kronolith)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=kronolith> H3
(2.1.4)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=kronolith>
Application is ready.
EDnet Web E-Mail (horde)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=horde> 3.1.3
<http://staff.ednet.ns.ca/admin/setup/config.php?app=horde> Application
is ready.
File Manager (gollem)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=gollem> H3
(1.0.2) <http://staff.ednet.ns.ca/admin/setup/config.php?app=gollem>
Application is ready.
Filters (ingo)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=ingo> H3 (1.1.2)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=ingo> Application
is ready.
Mail (imp) <http://staff.ednet.ns.ca/admin/setup/config.php?app=imp> H3
(4.1.3) <http://staff.ednet.ns.ca/admin/setup/config.php?app=imp>
Application is ready.
Mobile Mail (mimp)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=mimp> H3 (1.0)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=mimp> Application
is ready.
Notes (mnemo)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=mnemo> H3 (2.1.1)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=mnemo> Application
is ready.
Password (passwd)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=passwd> H3 (3.0)
<http://staff.ednet.ns.ca/admin/setup/config.php?app=passwd>
Application is ready.
Tasks (nag) <http://staff.ednet.ns.ca/admin/setup/config.php?app=nag> H3
(2.1.2)
We have seen this stalling in both sessions management via SQL/hordedb
and using our large address book (150,000+ entries). What we have found
is that php hangs sometimes for a short time, sometimes indefinitely.
Turba's hanging occurs when doing a search returning a large result. The
code that it stops in is turba/search.php line 54:
if ((is_array($criteria) && count($criteria)) || !empty($val)) {
if (($_SESSION['turba']['search_mode'] == 'basic' &&
is_object($results = $driver->search(array($criteria =>
$val)))) ||
($_SESSION['turba']['search_mode'] == 'advanced' &&
is_object($results = $driver->search($criteria)))) {
and it is in the returning of the search.We know from debug statements
that turba/lib/Driver/sql.php completes fine (and fast),
turba/lib/Driver.php completes. Then it appears to be waiting for this
code to complete. Strace shows the httpd process doing no calls. This
httpd is consuming 100% CPU.
When we mocked up some php code just to make a similar call through a
class and test the result from the database, it was returning fast and
fine. So outside of Horde we were not able to create this same affect.
Our current hack is to add "LIMIT 1000" to those calls. We also have
added this to the hordedb calls as some of them create a similar situation.
Would any one have any suggestions as to how we can explain/fix what is
happening?
thanks,
JES
More information about the turba
mailing list