6.0.0-alpha12
6/7/25

[#13264] Search "entire message" member function fetch() on a non-object
Summary Search "entire message" member function fetch() on a non-object
Queue IMP
Queue Version Git master
Type Bug
State Resolved
Priority 1. Low
Owners slusarz (at) horde (dot) org
Requester samuel.wolf (at) wolf-maschinenbau (dot) de
Created 06/14/2014 (4011 days ago)
Due
Updated 08/21/2014 (3943 days ago)
Assigned 07/03/2014 (3992 days ago)
Resolved 07/03/2014 (3992 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
08/21/2014 11:35:08 PM Git Commit Comment #21 Reply to this comment
Changes have been made in Git (master):

commit 5fe2f8f15b9f83719cec4159b073e90299811a4f
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Thu Aug 21 17:13:14 2014 -0600

     [mms] Ensure that search/POP3 mailbox listings are saved even if 
there is an issue with the underlying cache backend.

     See Ticket #13264

  imp/docs/CHANGES                |    2 +
  imp/lib/Factory/MailboxList.php |   78 
++++++++++++++++++++++++++++-----------
  imp/package.xml                 |    1 +
  3 files changed, 59 insertions(+), 22 deletions(-)

http://github.com/horde/horde/commit/5fe2f8f15b9f83719cec4159b073e90299811a4f
08/21/2014 11:26:16 PM Michael Slusarz Comment #20 Reply to this comment
I added code to IMP 6.2.2 to ensure that cache backend failures will 
not cause a mailbox rebuild, which may in certain cases cause issue 
with UID mis-mappings.
08/21/2014 11:25:30 PM Git Commit Comment #19 Reply to this comment
Changes have been made in Git (FRAMEWORK_5_2):

commit 2b93fe89922bf97bb84f15765b53063f1257c22f
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Thu Aug 21 17:13:14 2014 -0600

     [mms] Ensure that search/POP3 mailbox listings are saved even if 
there is an issue with the underlying cache backend.

     See Ticket #13264

  imp/docs/CHANGES                |    2 +
  imp/lib/Factory/MailboxList.php |   69 ++++++++++++++++++++++++++------------
  imp/package.xml                 |    2 +
  3 files changed, 51 insertions(+), 22 deletions(-)

http://github.com/horde/horde/commit/2b93fe89922bf97bb84f15765b53063f1257c22f
08/21/2014 04:54:29 PM jasper (dot) olbrich (at) students (dot) uni-marburg (dot) de Comment #18 Reply to this comment
I'm afraid that your changes didn't really fix this issue. From my
debug-logging, I see that the 'cache' parameter always is of the
Horde_Cache type, regardless of the cache driver/backend.
This is incorrect. testReadWrite() should NOT be used in a 
production environment first of all (brutal performance hit).  And 
regardless - this exists to catch permission issues when running 
Horde scripts from the command line.
I almost guessed that testRW() was suboptimal, but can you please 
check/verify that param['cache'] is always Horde_Cache and the 
branching in the constructor has to depend on its _storage?
More important: this just masks the configuration problem of "why is 
your cache backend not working in the first place"?
Not working or not configured. Perhaps it would make sense to document 
the consequences of using NOT RECOMMENDED" settings?

08/21/2014 04:44:25 PM Michael Slusarz Comment #17
Version ⇒ Git master
Reply to this comment
I'm afraid that your changes didn't really fix this issue. From my 
debug-logging, I see that the 'cache' parameter always is of the 
Horde_Cache type, regardless of the cache driver/backend.
This is incorrect. testReadWrite() should NOT be used in a production 
environment first of all (brutal performance hit).  And regardless - 
this exists to catch permission issues when running Horde scripts from 
the command line.

More important: this just masks the configuration problem of "why is 
your cache backend not working in the first place"?  Any cache backend 
other than Null should obviously be read/write to Horde.  Or else 
what's the point of defining a cache driver if you can't use it?
08/21/2014 02:03:07 PM Jasper (dot) Olbrich (at) students (dot) uni-marburg (dot) de Comment #16
New Attachment: 0001-Fix-bug-13264.patch Download
Reply to this comment
I'm afraid that your changes didn't really fix this issue. From my 
debug-logging, I see that the 'cache' parameter always is of the 
Horde_Cache type, regardless of the cache driver/backend.

I can successfully use large search results (with and without caching) 
with the attached patch.

07/08/2014 06:03:40 AM Michael Slusarz Comment #15 Reply to this comment
There is NO reason to not be using, e.g., file-based cache instead.
file-based cache is faster than I thought, also faster than xCache, 
thanks for the hint michael!
There's very little difference between a file-based cache and an 
"in-memory" cache on any recent OS since the contents of the file are 
almost certainly residing in memory buffers anyway (assuming, as is 
true for most modern boxes, that you have sufficient memory).
07/04/2014 12:35:45 AM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #14 Reply to this comment
There is NO reason to not be using, e.g., file-based cache instead.
file-based cache is faster than I thought, also faster than xCache, 
thanks for the hint michael!
07/03/2014 09:55:13 PM Michael Slusarz Comment #13 Reply to this comment
xCache is not recommended in general.

There is NO reason to not be using, e.g., file-based cache instead.
07/03/2014 09:52:02 PM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #12 Reply to this comment
Increase the xCache is also NOT RECOMMENDED?
07/03/2014 09:44:19 PM Michael Slusarz State ⇒ Resolved
 
07/03/2014 09:44:00 PM Git Commit Comment #11 Reply to this comment
Changes have been made in Git (master):

commit ba60daa40ae7b63879812dbf7917d1f008d1ddc0
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Thu Jul 3 15:42:10 2014 -0600

     Keep data in session storage if using a Null cache driver with 
Horde_Core_Cache_Session

     Bug #13264

     It makes zero sense to run IMP (or any Horde app) with a null cache
     driver, but I guess we need to support those broken configs.

  framework/Core/lib/Horde/Core/Cache/Session.php |    9 +++++++--
  1 files changed, 7 insertions(+), 2 deletions(-)

http://github.com/horde/horde/commit/ba60daa40ae7b63879812dbf7917d1f008d1ddc0
07/03/2014 09:43:58 PM Git Commit Comment #10 Reply to this comment
Changes have been made in Git (master):

commit e6536d65627ea4fb0351692fe430333f6ad46733
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Thu Jul 3 15:36:35 2014 -0600

     Bug #13264: Better documentation on good cache backend drivers

  horde/config/conf.xml |   20 +++++++++++++++++---
  1 files changed, 17 insertions(+), 3 deletions(-)

http://github.com/horde/horde/commit/e6536d65627ea4fb0351692fe430333f6ad46733
07/03/2014 09:43:36 PM Git Commit Comment #9 Reply to this comment
Changes have been made in Git (FRAMEWORK_5_2):

commit 85d37ae6672436acbfe6bb42a41af9938bbdcf42
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Thu Jul 3 15:36:35 2014 -0600

     Bug #13264: Better documentation on good cache backend drivers

  horde/config/conf.xml |   20 +++++++++++++++++---
  1 files changed, 17 insertions(+), 3 deletions(-)

http://github.com/horde/horde/commit/85d37ae6672436acbfe6bb42a41af9938bbdcf42
07/03/2014 09:19:46 PM Michael Slusarz Comment #8 Reply to this comment
There's your problem.  IMP requires a Horde_Cache driver.
In this case close the ticket (sorry), using now xCache.
It sounds like the problem here is that people are confused about what 
cache to use.  Which is a documentation issue

xCache is NOT useful as a Horde_Cache backend, since it is neither 
persistent and/or isn't large enough to be useful on even a smallish 
(25+ users) installation.
07/03/2014 08:59:58 PM Michael Slusarz Assigned to Michael Slusarz
State ⇒ Assigned
Priority ⇒ 1. Low
 
07/03/2014 08:49:38 PM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #7 Reply to this comment
There's your problem.  IMP requires a Horde_Cache driver.
In this case close the ticket (sorry), using now xCache.
07/03/2014 08:45:45 PM Michael Slusarz Comment #6 Reply to this comment
There's your problem.  IMP requires a Horde_Cache driver.
07/03/2014 10:56:43 AM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #5 Reply to this comment
The only thing I can think of is that your cache backend is broken.   
(You are not using SQL as a cache backend are you?)
Use a MySQL DB, if the DB is also used when $conf['cache']['driver'] = 
'Null';  yes.
07/03/2014 01:39:20 AM hiromi (at) tac (dot) tsukuba (dot) ac (dot) jp Comment #4 Reply to this comment

[Show Quoted Text - 9 lines]
I said in ML,
"I can reproduce this error if I disable the 'horde cache' in configuration.
  $conf['cache']['driver'] = 'Null';".

If I enable the cache, the search works fine.
I tested NoSQL(mongodb) and local file system backends.



07/02/2014 09:07:19 PM Michael Slusarz Comment #3 Reply to this comment
Hiromi Kimura found out [2] that the root cause is the maxsize in 
Horde/Core/Cache/Session.php
This should be irrelevant.  The "solution" in there does nothing more 
than store more information in the session rather than offloading to 
the cache backend.

The only thing I can think of is that your cache backend is broken.   
(You are not using SQL as a cache backend are you?)
06/18/2014 06:03:17 PM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #2 Reply to this comment
Increase my xCache size to the following values and enable xCache in horde.
xcache.size  =                512M
xcache.var_size  =            512M

$conf['cache']['driver'] = 'Xcache';

Works now with over 15 000 messages.
06/14/2014 07:04:17 AM samuel (dot) wolf (at) wolf-maschinenbau (dot) de Comment #1
Priority ⇒ 2. Medium
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Summary ⇒ Search "entire message" member function fetch() on a non-object
Type ⇒ Bug
Queue ⇒ IMP
Reply to this comment
See mailing list [1], there is a problem with IMP (?) and search results.

Hiromi Kimura found out [2] that the root cause is the maxsize in 
Horde/Core/Cache/Session.php
Increase this value to open more messages of an search result in IMP.

[1] http://marc.info/?t=140215085400002&r=1&w=2
[2] http://marc.info/?l=imp&m=140262211703797&w=2

Saved Queries