[horde] turba_objects schema not upgraded

francis picabia fpicabia at gmail.com
Fri Dec 20 15:37:55 UTC 2013


OK, I've found a solution to this on my own.

I noticed a table called turba_schema_info which had version=9.
I experimented with setting that mysql DB table back to 7 or 8
and it would update the schema from Administration panel
but still none of the fields with "yomi" where showing up.
I set it back to version 5 and repeated the schema update.
Now the fields object_yomifirstname and object_yomilastname appear
and addressbook use is clean.

In mysql:

update turba_schema_info set version = 5;

In web browser:

Administration (cog icon), Configuration, update turba schema.

Hope that helps someone else in this situation.


On Thu, Dec 19, 2013 at 11:00 AM, francis picabia <fpicabia at gmail.com> wrote:
> Running horde webmail 5.1.5 which includes turba 4.1.3
>
> This was upgraded from horde webmail 4.
>
> Aside from small issues, it is running very well.
>
> I'm seeing errors like this in the log:
>
> 2013-12-18T08:30:08-04:00 ERR: HORDE [imp] SQLSTATE[42S22]: Column not
> found: 1054 Unknown column 'object_yomifirstname' in 'where clause'
> [pid 4968 on line 171 of
> "/usr/local/www/horde/turba/lib/Driver/Sql.php"]
> 2013-12-18T08:30:09-04:00 ERR: HORDE [turba] SQL QUERY FAILED:
> SQLSTATE[42S22]: Column not found: 1054 Unknown column
> 'object_yomifirstname' in 'where clause'
>
> and then it lists the select query.
>
> In mysql I can see the turba_objects does not have any of the "yomi"
> styled field names.
>
> mysql> describe turba_objects
>     -> ;
> +-----------------------+--------------+------+-----+---------+-------+
> | Field                 | Type         | Null | Key | Default | Extra |
> +-----------------------+--------------+------+-----+---------+-------+
> | object_id             | varchar(32)  | NO   | PRI | NULL    |       |
> | owner_id              | varchar(255) | NO   | MUL | NULL    |       |
> | object_type           | varchar(255) | NO   |     | Object  |       |
> | object_uid            | varchar(255) | YES  |     | NULL    |       |
> | object_members        | longtext     | YES  |     | NULL    |       |
> | object_firstname      | varchar(255) | YES  | MUL | NULL    |       |
> | object_lastname       | varchar(255) | YES  | MUL | NULL    |       |
> | object_middlenames    | varchar(255) | YES  |     | NULL    |       |
> | object_nameprefix     | varchar(32)  | YES  |     | NULL    |       |
> | object_namesuffix     | varchar(32)  | YES  |     | NULL    |       |
> | object_alias          | varchar(32)  | YES  |     | NULL    |       |
> | object_photo          | longblob     | YES  |     | NULL    |       |
> | object_phototype      | varchar(10)  | YES  |     | NULL    |       |
> | object_bday           | varchar(10)  | YES  |     | NULL    |       |
> | object_homestreet     | varchar(255) | YES  |     | NULL    |       |
> | object_homepob        | varchar(10)  | YES  |     | NULL    |       |
> | object_homecity       | varchar(255) | YES  |     | NULL    |       |
> | object_homeprovince   | varchar(255) | YES  |     | NULL    |       |
> | object_homepostalcode | varchar(10)  | YES  |     | NULL    |       |
> | object_homecountry    | varchar(255) | YES  |     | NULL    |       |
> | object_workstreet     | varchar(255) | YES  |     | NULL    |       |
> | object_workpob        | varchar(10)  | YES  |     | NULL    |       |
> | object_workcity       | varchar(255) | YES  |     | NULL    |       |
> | object_workprovince   | varchar(255) | YES  |     | NULL    |       |
> | object_workpostalcode | varchar(10)  | YES  |     | NULL    |       |
> | object_workcountry    | varchar(255) | YES  |     | NULL    |       |
> | object_tz             | varchar(32)  | YES  |     | NULL    |       |
> | object_geo            | varchar(255) | YES  |     | NULL    |       |
> | object_email          | varchar(255) | YES  | MUL | NULL    |       |
> | object_homephone      | varchar(25)  | YES  |     | NULL    |       |
> | object_workphone      | varchar(25)  | YES  |     | NULL    |       |
> | object_cellphone      | varchar(25)  | YES  |     | NULL    |       |
> | object_fax            | varchar(25)  | YES  |     | NULL    |       |
> | object_pager          | varchar(25)  | YES  |     | NULL    |       |
> | object_title          | varchar(255) | YES  |     | NULL    |       |
> | object_role           | varchar(255) | YES  |     | NULL    |       |
> | object_logo           | longblob     | YES  |     | NULL    |       |
> | object_logotype       | varchar(10)  | YES  |     | NULL    |       |
> | object_company        | varchar(255) | YES  |     | NULL    |       |
> | object_category       | varchar(80)  | YES  |     | NULL    |       |
> | object_notes          | longtext     | YES  |     | NULL    |       |
> | object_url            | varchar(255) | YES  |     | NULL    |       |
> | object_freebusyurl    | varchar(255) | YES  |     | NULL    |       |
> | object_pgppublickey   | longtext     | YES  |     | NULL    |       |
> | object_smimepublickey | longtext     | YES  |     | NULL    |       |
> | object_assistant      | varchar(255) | YES  |     | NULL    |       |
> | object_workemail      | varchar(255) | YES  |     | NULL    |       |
> | object_homeemail      | varchar(255) | YES  |     | NULL    |       |
> +-----------------------+--------------+------+-----+---------+-------+
> 48 rows in set (0.00 sec)
>
>
> When I search for this fieldname under the site, I see there
> is a migration script:
>
> migration/7_turba_upgrade_activesyncschema.php:
> $this->addColumn('turba_objects', 'object_yomifirstname', 'string',
> array('limit' => 255));
>
> Is there a way I can make use of this script manually?  In administration
> page it says all schemas are ready (already used the update schemas).


More information about the horde mailing list