Roundcube 0.7.1 update issues

Tristan

Verified User
Joined
Feb 11, 2005
Messages
707
Location
The Netherlands
Hi there,

updated Roundcube from 0.7.0 to 0.7.1 yesterday by hand on one machine and got this:

Code:
Updating RoundCube webmail.
--22:09:39--  http://files.directadmin.com/services/all/roundcube/roundcubemail-0.7.1.tar.gz
           => `/usr/local/directadmin/custombuild/roundcubemail-0.7.1.tar.gz'
Resolving files.directadmin.com... 69.30.193.202, 216.144.254.90
Connecting to files.directadmin.com|69.30.193.202|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2,755,355 (2.6M) [application/x-gzip]

100%[============================================================================================================================================================>] 2,755,355      1.47M/s             

22:09:41 (1.46 MB/s) - `/usr/local/directadmin/custombuild/roundcubemail-0.7.1.tar.gz' saved [2755355/2755355]

Updating mysql database ...
ERROR 1091 (42000) at line 4 in file: '/var/www/html/roundcubemail-0.7.1/SQL/mysql.update.proper.sql': Can't DROP 'user_contacts_index'; check that column/key exists
Editing roundcube configuration...
Roundcube 0.7.1 has been installed successfully.
WARNING: Database schema needs to be updated!
Missing table 'cache_index'
Missing table 'cache_thread'
Missing table 'cache_messages'
Missing table 'dictionary'
Missing table 'searches'

Do you want to run the update queries to get the schmea fixed? (y/N)
y
MDB2 Error: not found (-4): _doQuery: [Error message: Could not execute statement]
[Last executed query: ALTER TABLE `messages`
  DROP INDEX `idx`,
  DROP INDEX `uid`;
]
[Native code: 1091]
[Native message: Can't DROP 'idx'; check that column/key exists]

Indexing contacts for user 1...done.
Indexing contacts for user 2...done.
Indexing contacts for user 3...done.
Indexing contacts for user 4...done.
Indexing contacts for user 5...done.
Indexing contacts for user 6...done.
Indexing contacts for user 7...done.
Indexing contacts for user 8...done.
Indexing contacts for user 9...done.
Indexing contacts for user 10...done.
Indexing contacts for user 11...done.
Indexing contacts for user 12...done.
Indexing contacts for user 13...done.
Indexing contacts for user 14...done.
Indexing contacts for user 15...done.
Indexing contacts for user 16...done.
Indexing contacts for user 17...done.
Indexing contacts for user 18...done.
Indexing contacts for user 19...done.
This instance of Roundcube is up-to-date.
Have fun!

on another machine it updated overnight via the automatic web apps update but got this in the email:

Code:
/etc/cron.daily/custombuild:
Updating RoundCube webmail.(B

gzip: stdin: unexpected end of file
/bin/tar: Child returned status 1
/bin/tar: Error is not recoverable: exiting now
Directory /var/www/html/roundcubemail-0.7.1 does not exist

Any idea what could be wrong?
 
You would have to check roundcube forums or buglist to see what this happens.
 
Ok will check though second error/server would look more like a Custombuild problem than a Roundcube problem.
 
The update process with roundcube isn't the cleanest. It was designed for manual updates by admins where each sql query was to be run manually.
We had to manually have DA figure out which of those SQL commands need to be run (which are all in 1 file). Parsing etc...
I believe they've then added a script to do checks to make this process easier and more fool-proof:
/var/www/html/roundcube/bin/update.sh

In any case, my guess is something is trying to run twice, or wasn't run at all.

I'd recommend trying to go back to the manual method and run each sql query one at a time.
1) Open up the file:
/var/www/html/roundcube/SQL/mysql.update.sql

2) Open up /phpMyAdmin as da_admin:
/usr/local/directadmin/conf/mysql.conf

and load the da_roundcube DB.

3) In PMA, go to the "SQL" table, and run each query from the mysql.update.sql one at a time.
You can probably start around version ~0.3, whichever the first version was. If unsure, start from the top.


Now, the earlier queries will fail, since they've already been run.
As you go down the list, some may work.. which may be the the ones that were skipped.

It would be much easier to run the entire mysql.update.sql file all at once, but since some queries were already run as would fail to run again, we can't do that (which is why it's a big messy).

I'm not 100% sure what their new bin/update.sh script does, but we do call it like this, so that it does what it can to also figure out the updates:
Code:
/var/www/html/roundcube/bin/update.sh '--version=?'
John
 
Code:
Missing table 'cache_index'
Missing table 'cache_thread'
Missing table 'cache_messages'
Missing table 'dictionary'
Missing table 'searches'

I had this problem, too. Those tables were added in the update from 0.6, so I ran everything from then on in the roundcube/SQL/mysql.update.sql.

Seems to have worked OK.
 
Back
Top