[dev] "Empty Trash" problem

Didi Rieder adrieder at sbox.tugraz.at
Sat Dec 10 08:20:57 PST 2005


Quoting Didi Rieder <adrieder at sbox.tugraz.at>:

> Quoting Didi Rieder <adrieder at sbox.tugraz.at>:
>
>> Quoting Michael M Slusarz <slusarz at mail.curecanti.org>:
>>
>>> Quoting Michael M Slusarz <slusarz at mail.curecanti.org>:
>>>
>>>> Quoting Didi Rieder <adrieder at sbox.tugraz.at>:
>>>>
>>>>> Hi,
>>>>>
>>>>> when clicking on "Empty Trash" (IMP cvs HEAD) I get the following error:
>>>>>
>>>>> [Thu Dec  8 18:32:09 2005] [error] PHP Fatal error:  Call to undefined
>>>>> function:  findbody() in
>>>>> /usr/local/apache/htdocs/cvs_dev/horde/imp/lib/IMAP/MailboxCache.php
>>>>> on line 572
>>>>>
>>>>> I this reproduceable by someone else?
>>>>
>>>> No, especially since findBody() is located on line 571.  Are you sure
>>>> your file is up to date ($Horde: imp/lib/IMAP/MailboxCache.php,v 1.44
>>>> 2005/11/28 18:16:46 slusarz Exp $)?
>>>
>>> I'm beginning to think there is something screwy in your IMAP server
>>> or c-client.  We check on every page load that the cached values of
>>> the imap_fetch_overview() information is present.  If not, we
>>> specifically attempt to re-obtain the data.  The only reason we would
>>> try to obtain data on a uid is if the IMAP server reports that the UID
>>> exists - if the IMAP server reports the UID exists, but
>>> imap_fetch_overview() and imap_fetchstructure() don't return any data
>>> for that UID, something screwy is going on with either the IMAP server
>>> or c-client.
>>>
>>> You wouldn't happen to be using an imapproxy, would you?
>>
>> We are indeed using an imapporxy: up-imapproxy-1.2.4
>> I'll disable it and try see happens...
>
> Hmm... still the same.
> here is a var_dump of "$imp_contents" from the line above, maybe
> someone gets somthing out of it:
>
> object(pear_error)(8) {
>   ["error_message_prefix"]=>
>   string(0) ""
>   ["mode"]=>
>   int(1)
>   ["level"]=>
>   int(1024)
>   ["code"]=>
>   NULL
>   ["message"]=>
>   string(25) "Error displaying message."
>   ["userinfo"]=>
>   NULL
>   ["backtrace"]=>
>   array(7) {
>     [0]=>
>     array(6) {
>       ["file"]=>
>       string(21) "/tmp/include/PEAR.php"
>       ["line"]=>
>       int(543)
>       ["function"]=>
>       string(10) "pear_error"
>       ["class"]=>
>       string(10) "pear_error"
>       ["type"]=>
>       string(2) "->"
>       ["args"]=>
>       array(5) {
>         [0]=>
>         string(25) "Error displaying message."
>         [1]=>
>         NULL
>         [2]=>
>         int(1)
>         [3]=>
>         int(1024)
>         [4]=>
>         NULL
>       }
>     }
>     [1]=>
>     array(6) {
>       ["file"]=>
>       string(64)
> "/usr/local/apache/htdocs/cvs_dev/horde/imp/lib/MIME/Contents.php"
>       ["line"]=>
>       int(108)
>       ["function"]=>
>       string(10) "raiseerror"
>       ["class"]=>
>       string(4) "pear"
>       ["type"]=>
>       string(2) "::"
>       ["args"]=>
>       array(1) {
>         [0]=>
>         string(25) "Error displaying message."
>       }
>     }
>     [2]=>
>     array(6) {
>       ["file"]=>
>       string(64)
> "/usr/local/apache/htdocs/cvs_dev/horde/imp/lib/MIME/Contents.php"
>       ["line"]=>
>       int(84)
>       ["function"]=>
>       string(7) "factory"
>       ["class"]=>
>       string(12) "imp_contents"
>       ["type"]=>
>       string(2) "::"
>       ["args"]=>
>       array(1) {
>         [0]=>
>         int(7637)
>       }
>     }
>     [3]=>
>     array(6) {
>       ["file"]=>
>       string(68)
> "/usr/local/apache/htdocs/cvs_dev/horde/imp/lib/IMAP/MailboxCache.php"
>       ["line"]=>
>       int(569)
>       ["function"]=>
>       string(9) "singleton"
>       ["class"]=>
>       string(12) "imp_contents"
>       ["type"]=>
>       string(2) "::"
>       ["args"]=>
>       array(1) {
>         [0]=>
>         int(7637)
>       }
>     }
>     [4]=>
>     array(6) {
>       ["file"]=>
>       string(68)
> "/usr/local/apache/htdocs/cvs_dev/horde/imp/lib/IMAP/MailboxCache.php"
>       ["line"]=>
>       int(291)
>       ["function"]=>
>       string(16) "_generatepreview"
>       ["class"]=>
>       string(16) "imp_mailboxcache"
>       ["type"]=>
>       string(2) "->"
>       ["args"]=>
>       array(2) {
>         [0]=>
>         &string(11) "INBOX.Trash"
>         [1]=>
>         &#8747;(7637)
>       }
>     }
>     [5]=>
>     array(6) {
>       ["file"]=>
>       string(58) "/usr/local/apache/htdocs/cvs_dev/horde/imp/lib/Mailbox.php"
>       ["line"]=>
>       int(249)
>       ["function"]=>
>       string(8) "retrieve"
>       ["class"]=>
>       string(16) "imp_mailboxcache"
>       ["type"]=>
>       string(2) "->"
>       ["args"]=>
>       array(3) {
>         [0]=>
>         &string(11) "INBOX.Trash"
>         [1]=>
>         &array(1) {
>           [0]=>
>           int(7637)
>         }
>         [2]=>
>         &#8747;(231)
>       }
>     }
>     [6]=>
>     array(6) {
>       ["file"]=>
>       string(54) "/usr/local/apache/htdocs/cvs_dev/horde/imp/mailbox.php"
>       ["line"]=>
>       int(316)
>       ["function"]=>
>       string(17) "buildmailboxarray"
>       ["class"]=>
>       string(11) "imp_mailbox"
>       ["type"]=>
>       string(2) "->"
>       ["args"]=>
>       array(5) {
>         [0]=>
>         &#8747;(1)
>         [1]=>
>         &NULL
>         [2]=>
>         &#8747;(1)
>         [3]=>
>         &array(1) {
>           [0]=>
>           string(4) "7637"
>         }
>         [4]=>
>         &array(0) {
>         }
>       }
>     }
>   }
>   ["callback"]=>
>   NULL
> }
>

I still get the same error, and I know that I'm no alone with it.
It seams that after pressing "Empty Trash", the Contents factory is  
trying to retrieve informations from the cache on already deleted  
messages (no more existing indeces in the trash mailbox). That causes  
a PEAR error which is returned by the Contents factory. So the  
returned object doesn't have a function "findBody".

Any thought on that?

Didi


-- 
-------------------------
Didi Rieder
adrieder at sbox.tugraz.at
PGPKey ID: 3431D0B0
-------------------------




More information about the dev mailing list