[horde] All was working well for years till today Fatal error: Perms::getPermissions()...

Michael Rubinsky mrubinsk at horde.org
Wed Oct 1 14:58:42 UTC 2008


Quoting Alfred Nutile <alfred at rvtc.us>:

> The full message is
>         "
>         Fatal error: Perms::getPermissions() [<a
>         href='function.getPermissions'>function.getPermissions</a>]: The
>         script
>         tried to execute a method or access a property of an incomplete
>         object.
>         Please ensure that the class definition
>         &quot;DataTreeObject_Permission&quot; of the object you are
>         trying to
>         operate on was loaded _before_ unserialize() gets called or
>         provide a
>         __autoload() function to load the class definition
>         in /var/www/web1/web/horde2/lib/Horde/Perms.php on line 275"
>         But there was a new install on this shared server of another
>         clients
>         horde, in a different folder and different DB and different URL.
>         Maybe though they are sharing a common 'cache'?
>
>         I tried a new DB and the same problem.
>         New install w/ the latest horde
>         Horde Groupware Webmail Edition 1.2
>         I was running 1.1 before this.
>
>         I want to make sure not to mess with the clients installation,
>         fortunately the one that is broken is our own.
>
>         It is php 5.1 and mysql 5.02
>
>         Here is the conf file
>
>         -----------------start config.php-------------------
>
>
>         <?php
>         /* CONFIG START. DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE.
>         */
>         // $Horde: horde/config/conf.xml,v 1.74.2.69 2008/06/05 09:05:50
>         jan Exp
>         $
>         $conf['vhosts'] = false;
>         $conf['debug_level'] = E_ALL;
>         $conf['max_exec_time'] = 0;
>         $conf['compress_pages'] = true;
>         $conf['umask'] = 077;
>         $conf['use_ssl'] = 2;
>         $conf['server']['name'] = $_SERVER['SERVER_NAME'];
>         $conf['server']['port'] = $_SERVER['SERVER_PORT'];
>         $conf['urls']['pretty'] = false;
>         $conf['safe_ips'] = array();
>         $conf['session']['name'] = 'Horde';
>         $conf['session']['use_only_cookies'] = true;
>         $conf['session']['cache_limiter'] = 'nocache';
>         $conf['session']['timeout'] = 0;
>         $conf['cookie']['domain'] = $_SERVER['SERVER_NAME'];
>         $conf['cookie']['path'] = '/horde2';
>         $conf['sql']['username'] = 'xxxx';
>         $conf['sql']['password'] = 'xxxx';
>         $conf['sql']['hostspec'] = 'localhost';
>         $conf['sql']['port'] = 3306;
>         $conf['sql']['protocol'] = 'tcp';
>         $conf['sql']['database'] = 'xxxx';
>         $conf['sql']['charset'] = 'iso-8859-1';
>         $conf['sql']['splitread'] = false;
>         $conf['sql']['phptype'] = 'mysqli';
>         $conf['auth']['admins'] = array('xxxx');
>         $conf['auth']['checkip'] = true;
>         $conf['auth']['checkbrowser'] = true;
>         $conf['auth']['alternate_login'] = false;
>         $conf['auth']['redirect_on_logout'] = false;
>         $conf['auth']['params']['app'] = 'imp';
>         $conf['auth']['driver'] = 'application';
>         $conf['signup']['allow'] = false;
>         $conf['log']['priority'] = PEAR_LOG_NOTICE;
>         $conf['log']['ident'] = 'HORDE';
>         $conf['log']['params'] = array();
>         $conf['log']['name'] = '/tmp/horde_rvtc.log'; <--I made this
>         different
>         then the other installation (there are three on this server)
>         $conf['log']['params']['append'] = true;
>         $conf['log']['type'] = 'file';
>         $conf['log']['enabled'] = true;
>         $conf['log_accesskeys'] = false;
>         $conf['prefs']['params']['driverconfig'] = 'horde';
>         $conf['prefs']['driver'] = 'sql';
>         $conf['alarms']['params']['driverconfig'] = 'horde';
>         $conf['alarms']['params']['ttl'] = 300;
>         $conf['alarms']['driver'] = 'sql';
>         $conf['datatree']['params']['driverconfig'] = 'horde';
>         $conf['datatree']['driver'] = 'sql';
>         $conf['group']['driverconfig'] = 'horde';
>         $conf['group']['driver'] = 'sql';
>         $conf['group']['cache'] = false;
>         $conf['perms']['driverconfig'] = 'horde';
>         $conf['perms']['driver'] = 'sql';
>         $conf['share']['no_sharing'] = false;
>         $conf['share']['any_group'] = false;
>         $conf['share']['cache'] = false;
>         $conf['share']['driver'] = 'sql';
>         $conf['cache']['default_lifetime'] = 86400;
>         $conf['cache']['params']['sub'] = 0;
>         $conf['cache']['driver'] = 'file';
>         $conf['lock']['params']['driverconfig'] = 'horde';
>         $conf['lock']['driver'] = 'sql';
>         $conf['token']['driver'] = 'none';
>         $conf['mailer']['params']['sendmail_path'] =
>         '/usr/lib/sendmail';
>         $conf['mailer']['params']['sendmail_args'] = '-oi';
>         $conf['mailer']['type'] = 'sendmail';
>         $conf['mailformat']['brokenrfc2231'] = false;
>         $conf['vfs']['params']['driverconfig'] = 'horde';
>         $conf['vfs']['type'] = 'sql';
>         $conf['sessionhandler']['type'] = 'none';
>         $conf['sessionhandler']['memcache'] = false;
>         $conf['problems']['email'] = 'webmaster at example.com';
>         $conf['problems']['maildomain'] = 'example.com';
>         $conf['problems']['tickets'] = false;
>         $conf['problems']['attachments'] = true;
>         $conf['menu']['apps'] = array('dimp', 'horde', 'imp', 'ingo',
>         'kronolith', 'mimp', 'mnemo', 'nag', 'turba');
>         $conf['menu']['always'] = false;
>         $conf['menu']['links']['help'] = 'all';
>         $conf['menu']['links']['options'] = 'authenticated';
>         $conf['menu']['links']['problem'] = 'all';
>         $conf['menu']['links']['login'] = 'all';
>         $conf['menu']['links']['logout'] = 'authenticated';
>         $conf['hooks']['permsdenied'] = false;
>         $conf['hooks']['username'] = false;
>         $conf['hooks']['preauthenticate'] = false;
>         $conf['hooks']['postauthenticate'] = false;
>         $conf['hooks']['authldap'] = false;
>         $conf['hooks']['groupldap'] = false;
>         $conf['portal']['fixed_blocks'] = array();
>         $conf['accounts']['driver'] = 'null';
>         $conf['user']['verify_from_addr'] = false;
>         $conf['imsp']['enabled'] = false;
>         $conf['kolab']['enabled'] = false;
>         $conf['memcache']['enabled'] = false;
>         /* CONFIG END. DO NOT CHANGE ANYTHING IN OR BEFORE THIS LINE. */
>
>
>         -----------------end config.php---------------------
>
>         I did search the lists for some key words from the error. But if
>         it is a
>         a php sessions I was not sure how to wipe it.
>         I tried other computers too.
>         I read also restarting the apache should help but how do I
>         prevent this from happening to the other installs?
>         Thanks
>
>
>         --
>         Alfred Nutile


I've seen this happen elsewhere when certain configuration changes are  
made (such as switching from datatree shares to sql shares). This is  
usually caused by a stale cache....but would probably also be caused  
by two different installs sharing the same cache, but I imagine you  
would have many other issues in that case.  If you have multiple,  
distinct, horde installs on the same machine you will definitely want  
to make sure they each have their own cache and session data, maybe  
even their own /tmp directory as well. These things are configurable  
via administration->setup->horde

Thanks,
mike

--
The Horde Project (www.horde.org)
mrubinsk at horde.org

"Time just hates me. That's why it made me an adult." - Josh Joplin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: PGP Digital Signature
URL: <http://lists.horde.org/archives/horde/attachments/20081001/b9d58776/attachment.bin>


More information about the horde mailing list