[horde] PEAR upgrade missed schema updates

Jens-U. Mozdzen jmozdzen at nde.ag
Tue Aug 13 15:08:01 UTC 2013


Hi *,

a few moments ago, our Horde install was updated to the latest level:

--- cut here ---
# pear list-upgrades
pear.horde.org Available Upgrades (stable):
===========================================
Channel        Package          Local          Remote         Size
pear.horde.org Horde_ActiveSync 2.5.6 (stable) 2.6.1 (stable) 191kB
pear.horde.org Horde_Core       2.6.4 (stable) 2.6.6 (stable) 1446kB
pear.horde.org Horde_History    2.1.5 (stable) 2.1.6 (stable) 21kB
pear.horde.org Horde_Memcache   2.0.3 (stable) 2.0.5 (stable) 13.8kB
pear.horde.org Horde_Mime       2.2.3 (stable) 2.2.4 (stable) 91kB
pear.horde.org Horde_Stream     1.2.0 (stable) 1.3.0 (stable) 13.7kB
pear.php.net Available Upgrades (stable):
=========================================
Channel      Package        Local          Remote          Size
pear.php.net Archive_Tar    1.3.7 (stable) 1.3.11 (stable) 18.1kB
pear.php.net Console_Getopt 1.3.0 (stable) 1.3.1 (stable)  4.4kB
Channel pecl.php.net: No upgrades available
# pear upgrade
Did not download optional dependencies: horde/Horde_Test, use  
--alldeps to download automatically
Did not download optional dependencies: horde/Horde_Test, pecl/idn,  
use --alldeps to download automatically
Did not download optional dependencies: horde/Horde_Test, use  
--alldeps to download automatically
Did not download optional dependencies: horde/Horde_Test, use  
--alldeps to download automatically
Did not download optional dependencies: horde/Horde_Test,  
pear/Text_CAPTCHA, pear/Text_LanguageDetect, use --alldeps to download  
automatically
horde/Horde_Stream can optionally use package "horde/Horde_Test"  
(version >= 2.1.0, version <= 3.0.0alpha1, excluded versions:  
3.0.0alpha1)
horde/Horde_Mime can optionally use package "horde/Horde_Test"  
(version >= 2.1.0, version <= 3.0.0alpha1, excluded versions:  
3.0.0alpha1)
horde/Horde_Mime can optionally use package "pecl/idn"
horde/Horde_History can optionally use package "horde/Horde_Test"  
(version >= 2.1.0, version <= 3.0.0alpha1, excluded versions:  
3.0.0alpha1)
horde/Horde_ActiveSync can optionally use package "horde/Horde_Test"  
(version >= 2.1.0, version <= 3.0.0alpha1, excluded versions:  
3.0.0alpha1)
horde/Horde_Core can optionally use package "horde/Horde_Test"  
(version >= 2.1.0, version <= 3.0.0alpha1, excluded versions:  
3.0.0alpha1)
horde/Horde_Core can optionally use package "pear/Text_CAPTCHA"
horde/Horde_Core can optionally use package "pear/Text_LanguageDetect"
downloading Horde_Stream-1.3.0.tgz ...
Starting to download Horde_Stream-1.3.0.tgz (13,924 bytes)
.....done: 13,924 bytes
downloading Horde_Memcache-2.0.5.tgz ...
Starting to download Horde_Memcache-2.0.5.tgz (14,102 bytes)
...done: 14,102 bytes
downloading Horde_Mime-2.2.4.tgz ...
Starting to download Horde_Mime-2.2.4.tgz (92,729 bytes)
...done: 92,729 bytes
downloading Horde_History-2.1.6.tgz ...
Starting to download Horde_History-2.1.6.tgz (21,301 bytes)
...done: 21,301 bytes
downloading Horde_ActiveSync-2.6.1.tgz ...
Starting to download Horde_ActiveSync-2.6.1.tgz (194,987 bytes)
...done: 194,987 bytes
downloading Horde_Core-2.6.6.tgz ...
Starting to download Horde_Core-2.6.6.tgz (1,480,548 bytes)
...done: 1,480,548 bytes
downloading Console_Getopt-1.3.1.tgz ...
Starting to download Console_Getopt-1.3.1.tgz (4,471 bytes)
...done: 4,471 bytes
downloading Archive_Tar-1.3.11.tgz ...
Starting to download Archive_Tar-1.3.11.tgz (18,537 bytes)
...done: 18,537 bytes
upgrade ok: channel://pear.horde.org/Horde_Stream-1.3.0
upgrade ok: channel://pear.horde.org/Horde_Memcache-2.0.5
upgrade ok: channel://pear.horde.org/Horde_History-2.1.6
upgrade ok: channel://pear.php.net/Console_Getopt-1.3.1
upgrade ok: channel://pear.php.net/Archive_Tar-1.3.11
upgrade ok: channel://pear.horde.org/Horde_Mime-2.2.4
upgrade ok: channel://pear.horde.org/Horde_ActiveSync-2.6.1
upgrade ok: channel://pear.horde.org/Horde_Core-2.6.6
# horde-clear-cache
Are you sure you want to expire all cached data?
     (y) Yes
     (n) No

Type your choice [n]: yy
[   OK   ] Cache data cleared. NOTE: This does not indicate that cache  
data was
            successfully cleared on the backend, only that no error messages
            were returned.
#
--- cut here ---

I then checked the configuration page (as admin user), but everything  
was reported as "up to date". Out of curiosity I wanted to check the  
list of ActiveSync devices, but got a browser response showing some  
PHP error, caused by a missing column in one of the ActiveSync tables.

A manual schema upgrade cured this:
--- cut here ---
# horde-db-migrate
[  INFO  ] Migrating DB up.
[  INFO  ] Current imp schema version: 3
[  INFO  ] Ending imp schema version: 3
[  INFO  ] Current ingo schema version: 5
[  INFO  ] Ending ingo schema version: 5
[  INFO  ] Current kronolith schema version: 21
[  INFO  ] Ending kronolith schema version: 21
[  INFO  ] Current turba schema version: 9
[  INFO  ] Ending turba schema version: 9
[  INFO  ] Current nag schema version: 12
[  INFO  ] Ending nag schema version: 12
[  INFO  ] Current mnemo schema version: 5
[  INFO  ] Ending mnemo schema version: 5
[  INFO  ] Current trean schema version: 5
[  INFO  ] Ending trean schema version: 5
[  INFO  ] Current gollem schema version: 2
[  INFO  ] Ending gollem schema version: 2
[  INFO  ] Current content schema version: 2
[  INFO  ] Ending content schema version: 2
[  INFO  ] Current Horde_ActiveSync schema version: 17
Migrating to HordeActiveSyncAddMapDeleteFlag (18)
== 18 HordeActiveSyncAddMapDeleteFlag: migrating  
==============================
-- addColumn('horde_activesync_map', 'sync_deleted', 'boolean')
    -> 0.3601s
== 18 HordeActiveSyncAddMapDeleteFlag: migrated (0.3605s)  
=====================

Migrating to HordeActiveSyncAddTimestamp (19)
== 19 HordeActiveSyncAddTimestamp: migrating  
==================================
-- renameColumn('horde_activesync_state', 'sync_time', 'sync_mod')
    -> 0.0537s
-- addColumn('horde_activesync_state', 'sync_timestamp', 'integer')
    -> 0.0118s
== 19 HordeActiveSyncAddTimestamp: migrated (0.0662s)  
=========================

[  INFO  ] Ending Horde_ActiveSync schema version: 19
[  INFO  ] Current Horde_Alarm schema version: 1
[  INFO  ] Ending Horde_Alarm schema version: 1
[  INFO  ] Current Horde_Auth schema version: 1
[  INFO  ] Ending Horde_Auth schema version: 1
[  INFO  ] Current Horde_Cache schema version: 2
[  INFO  ] Ending Horde_Cache schema version: 2
[  INFO  ] Current Horde_Core schema version: 1
[  INFO  ] Ending Horde_Core schema version: 1
[  INFO  ] Current Horde_Dav schema version: 1
[  INFO  ] Ending Horde_Dav schema version: 1
[  INFO  ] Current Horde_Group schema version: 2
[  INFO  ] Ending Horde_Group schema version: 2
[  INFO  ] Current Horde_History schema version: 3
Migrating to HordeHistoryAddCompositeIndex (4)
== 4 HordeHistoryAddCompositeIndex: migrating  
=================================
-- addIndex('horde_histories', array(0 => 'history_modseq', 1 =>  
'object_uid'))
    -> 0.2160s
== 4 HordeHistoryAddCompositeIndex: migrated (0.2164s)  
========================

Migrating to HordeHistoryRemoveCompositeIndex (5)
== 5 HordeHistoryRemoveCompositeIndex: migrating  
==============================
-- indexes('horde_histories')
    -> 0.0063s
-- indexName('horde_histories', 'history_modseq')
    -> 0.0000s
-- indexName('horde_histories', 'object_uid')
    -> 0.0000s
-- removeIndex('horde_histories', array('name' =>  
'index_horde_histories_on_object_uid'))
    -> 0.0351s
-- removeIndex('horde_histories', array('name' =>  
'index_horde_histories_on_history_modseq'))
    -> 0.0146s
== 5 HordeHistoryRemoveCompositeIndex: migrated (0.0578s)  
=====================

Migrating to HordeHistoryFixBotchedIndexes (6)
== 6 HordeHistoryFixBotchedIndexes: migrating  
=================================
-- indexes('horde_histories')
    -> 0.0027s
-- indexName('horde_histories', array('column' => array (
   0 => 'history_modseq',
   1 => 'object_uid',
)))
    -> 0.0000s
-- removeIndex('horde_histories', array('name' =>  
'index_horde_histories_on_history_modseq_and_object_uid'))
    -> 0.0124s
-- addIndex('horde_histories', array(0 => 'history_modseq'))
    -> 0.0498s
-- addIndex('horde_histories', array(0 => 'object_uid'))
    -> 0.0605s
== 6 HordeHistoryFixBotchedIndexes: migrated (0.1271s)  
========================

[  INFO  ] Ending Horde_History schema version: 6
[  INFO  ] Current Horde_Imap_Client schema version: 1
[  INFO  ] Ending Horde_Imap_Client schema version: 1
[  INFO  ] Current Horde_Lock schema version: 3
[  INFO  ] Ending Horde_Lock schema version: 3
[  INFO  ] Current Horde_Perms schema version: 2
[  INFO  ] Ending Horde_Perms schema version: 2
[  INFO  ] Current Horde_Prefs schema version: 3
[  INFO  ] Ending Horde_Prefs schema version: 3
[  INFO  ] Current Horde_SessionHandler schema version: 2
[  INFO  ] Ending Horde_SessionHandler schema version: 2
[  INFO  ] Current Horde_SyncMl schema version: 1
[  INFO  ] Ending Horde_SyncMl schema version: 1
[  INFO  ] Current Horde_Token schema version: 1
[  INFO  ] Ending Horde_Token schema version: 1
[  INFO  ] Current Horde_Vfs schema version: 3
[  INFO  ] Ending Horde_Vfs schema version: 3
--- cut here ---

but it looks like HordeHistory even had missed more than one update...

Why didn't the schema update run during PEAR upgrade, and why didn't I  
get warnings about missing schema updates in the configuration panel?  
I recall having seen similar problem reports on the list during the  
last months, is there a general problem with schema updates via PEAR?

Regards,
Jens



More information about the horde mailing list