[SM-USERS] User receiving getEntity error in view_text.php
Got a report from one user who says he occasionally receives the following error when viewing email as text: "Fatal error: Call to a member function getEntity() on a non-object in SM_BASE/src/view_text.php" The only piece of information I have is that the user makes "heavy" use of tabs with Squirrelmail. I've been unable to reproduce the error other than by visiting view_text.php of a given message without first viewing the full message (which seems like an unlikely thing for a user to do) My best guess as to what's causing this is some sort of session corruption/truncation, or the user having a "stale" tab he revisits after the session expires. Has anyone else run into this? Any ideas on what behavior could be causing this? I've patched a work around like so: if (!is_object($message)) { $message = sqimap_get_message($imapConnection, $passed_id, $mailbox); } Which will fetch the message if it isn't available in what appears to be a cache of messages in the session. But I'm not sure how appropriate it is to do so (it seems to work well enough, and at the very least stops the user from seeing the error). Any thoughts? Matt -- - squirrelmail-users mailing list Posting guidelines: http://squirrelmail.org/postingguidelines List address: squirrelmail-users@lists.sourceforge.net List archives: http://news.gmane.org/gmane.mail.squirrelmail.user List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users
Re: [SM-USERS] User receiving getEntity error in view_text.php
On Mon, May 10, 2010 at 6:49 AM, Matt Elson wrote: > Got a report from one user who says he occasionally receives the > following error when viewing email as text: > > "Fatal > error: Call to a member function getEntity() on a non-object in > SM_BASE/src/view_text.php" Please make sure to include the full error (line numbers are especially helpful). Also, version information and other things requested in the mailing list posting guidelines... > The only piece of information I have is that the user makes "heavy" use > of tabs with Squirrelmail. I've been unable to reproduce the error > other than by visiting view_text.php of a given message without first > viewing the full message (which seems like an unlikely thing for a user > to do) My best guess as to what's causing this is some sort of session > corruption/truncation, or the user having a "stale" tab he revisits > after the session expires. > > Has anyone else run into this? Any ideas on what behavior could be > causing this? > > I've patched a work around like so: > > if (!is_object($message)) { > $message = sqimap_get_message($imapConnection, $passed_id, $mailbox); > } > > Which will fetch the message if it isn't available in what appears to be > a cache of messages in the session. > > But I'm not sure how appropriate it is to do so (it seems to work well > enough, and at the very least stops the user from seeing the error). Sounds reasonable, but as you suspect, it's hard to comment any further without a way to reproduce the problem. It does sound like the message cache in session was lost in this case. -- Paul Lesniewski SquirrelMail Team Please support Open Source Software by donating to SquirrelMail! http://squirrelmail.org/donate_paul_lesniewski.php -- - squirrelmail-users mailing list Posting guidelines: http://squirrelmail.org/postingguidelines List address: squirrelmail-users@lists.sourceforge.net List archives: http://news.gmane.org/gmane.mail.squirrelmail.user List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users
Re: [SM-USERS] User receiving getEntity error in view_text.php
> Please make sure to include the full error (line numbers are > especially helpful). Also, version information and other things > requested in the mailing list posting guidelines... Ahh, sorry, I'm usually better about such things.. squirrelmail-1.4.20 php-5.1.6 (redhat's packaging, 5.1.6-27) Apache httpd-2.2.3 (redhat again, 2.2.3-43) sends to: sendmail-8.13.6 (built from source, different machine) imap server is usually cyrus-2.2.13p1 (built from source, different machine) through in.imaproxyd-1.2.6 Red Hat Enterprise Linux Server release 5.5 (Tikanga) Kernel 2.6.18-194.el5 $plugins[0] = 'delete_move_next'; - 3.0 $plugins[1] = 'squirrelspell'; - unsure, has a copyright of 2010 $plugins[2] = 'newmail'; ditto $plugins[3] = 'sasql'; - 3.2.0 $plugins[4] = 'compatibility'; - 2.0.16 $plugins[5] = 'vlogin'; - 3.10.2 $plugins[6] = 'spam_buttons'; - 2.3.1 $plugins[7] = 'html_mail'; 2.3-1.4 $plugins[8] = 'view_as_html'; -3.8 $plugins[10] = 'select_range'; - 3.7.1 (optional patches applied) $plugins[11] = 'folder_sizes'; - 1.5rc1 $plugins[12] = 'unsafe_image_rules'; - 0.8 $plugins[13] = 'verify_reply_to'; - 1.0 $plugins[14] = 'auto_cc'; - 2.0 $plugins[15] = 'exchange_check'; (custom) $plugins[16] = 'squirrel_logger'; - 2.3 $plugins[17] = 'quicksave'; - 2.4.5 $plugins[18] = 'terminate_session'; (custom) $plugins[19] = 'abook_import_export'; - 1.1 $plugins[20] = 'wes_menus'; (custom) - $plugins[21] = 'javascript_libs';0.1.2 $plugins[22] = 'wes_portfolio_login';(custom) $plugins[23] = 'avelsieve'; - 1.9.9 $plugins[24] = 'wes_empty_spam'; (custom) Specific error message was: "Fatal error: Call to a member function getEntity() on a non-object in SM_BASE/src/view_text.php on line 53" > Sounds reasonable, but as you suspect, it's hard to comment any > further without a way to reproduce the problem. It does sound like > the message cache in session was lost in this case. Any ideas on how large squirrelmail sessions can get during typical usage? (useSessionBased is on in the vlogin plugin if that adds significant overhead). My working theory is the user is running up against an upper limit in the memcache session handling, but I'm not sure how large a typical squirrelmail session is expected to be (nor how the memcache session handler reacts when it hits the limit). Matt -- - squirrelmail-users mailing list Posting guidelines: http://squirrelmail.org/postingguidelines List address: squirrelmail-users@lists.sourceforge.net List archives: http://news.gmane.org/gmane.mail.squirrelmail.user List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users
Re: [SM-USERS] User receiving getEntity error in view_text.php
On Mon, May 10, 2010 at 12:06 PM, Matt Elson wrote: > >> Please make sure to include the full error (line numbers are >> especially helpful). Also, version information and other things >> requested in the mailing list posting guidelines... > > Ahh, sorry, I'm usually better about such things.. > > squirrelmail-1.4.20 > php-5.1.6 (redhat's packaging, 5.1.6-27) > Apache httpd-2.2.3 (redhat again, 2.2.3-43) > sends to: sendmail-8.13.6 (built from source, different machine) > imap server is usually cyrus-2.2.13p1 (built from source, different > machine) through in.imaproxyd-1.2.6 > Red Hat Enterprise Linux Server release 5.5 (Tikanga) > Kernel 2.6.18-194.el5 > $plugins[0] = 'delete_move_next'; - 3.0 > $plugins[1] = 'squirrelspell'; - unsure, has a copyright of 2010 > $plugins[2] = 'newmail'; ditto > $plugins[3] = 'sasql'; - 3.2.0 > $plugins[4] = 'compatibility'; - 2.0.16 > $plugins[5] = 'vlogin'; - 3.10.2 > $plugins[6] = 'spam_buttons'; - 2.3.1 > $plugins[7] = 'html_mail'; 2.3-1.4 > $plugins[8] = 'view_as_html'; -3.8 > $plugins[10] = 'select_range'; - 3.7.1 (optional patches applied) > $plugins[11] = 'folder_sizes'; - 1.5rc1 > $plugins[12] = 'unsafe_image_rules'; - 0.8 > $plugins[13] = 'verify_reply_to'; - 1.0 > $plugins[14] = 'auto_cc'; - 2.0 > $plugins[15] = 'exchange_check'; (custom) > $plugins[16] = 'squirrel_logger'; - 2.3 > $plugins[17] = 'quicksave'; - 2.4.5 > $plugins[18] = 'terminate_session'; (custom) > $plugins[19] = 'abook_import_export'; - 1.1 > $plugins[20] = 'wes_menus'; (custom) - > $plugins[21] = 'javascript_libs';0.1.2 > $plugins[22] = 'wes_portfolio_login';(custom) > $plugins[23] = 'avelsieve'; - 1.9.9 > $plugins[24] = 'wes_empty_spam'; (custom) > > Specific error message was: > > "Fatal error: Call to a member function getEntity() on a non-object in > SM_BASE/src/view_text.php on line 53" > >> Sounds reasonable, but as you suspect, it's hard to comment any >> further without a way to reproduce the problem. It does sound like >> the message cache in session was lost in this case. > > Any ideas on how large squirrelmail sessions can get during typical > usage? (useSessionBased is on in the vlogin plugin if that adds > significant overhead). My working theory is the user is running up > against an upper limit in the memcache session handling, but I'm not > sure how large a typical squirrelmail session is expected to be (nor how > the memcache session handler reacts when it hits the limit). That could be a possibility. Are you seeing excessively large session files for that user? One possible solution is outlined here: http://article.gmane.org/gmane.mail.squirrelmail.user/37494/match=max_token_age_days -- Paul Lesniewski SquirrelMail Team Please support Open Source Software by donating to SquirrelMail! http://squirrelmail.org/donate_paul_lesniewski.php -- - squirrelmail-users mailing list Posting guidelines: http://squirrelmail.org/postingguidelines List address: squirrelmail-users@lists.sourceforge.net List archives: http://news.gmane.org/gmane.mail.squirrelmail.user List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users
Re: [SM-USERS] User receiving getEntity error in view_text.php
> That could be a possibility. Are you seeing excessively large session > files for that user? Hmm, will have to figure out a way to get that data out of memcached (which looking into it definitely has a 1M-per-value limit currently, looks easy enough to adjust luckily); shouldn't be too hard to do, but don't have it at my fingertips. I'm guessing that's the issue at this point, probably coming about in part because of the added space of the security tokens as you note below combined with this user's usage patterns. I'll poke around to get a better sense and see if I can work on replicating the issue as well since I have some place to start. One possible solution is outlined here: > > http://article.gmane.org/gmane.mail.squirrelmail.user/37494/match=max_token_age_days > Thank you very much. Sorry again for leaving out the version info and what not at the beginning, Matt -- - squirrelmail-users mailing list Posting guidelines: http://squirrelmail.org/postingguidelines List address: squirrelmail-users@lists.sourceforge.net List archives: http://news.gmane.org/gmane.mail.squirrelmail.user List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users