From: Jens Georg Date: Sat, 15 Dec 2012 12:19:50 +0000 (+0100) Subject: media-export: Fix database upgrade to version 12 X-Git-Tag: RYGEL_0_17_5_1~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7669b5e0be7dd431b4285e8c4d74037d6a3b3fa7;p=profile%2Fivi%2Frygel.git media-export: Fix database upgrade to version 12 --- diff --git a/src/plugins/media-export/rygel-media-export-media-cache-upgrader.vala b/src/plugins/media-export/rygel-media-export-media-cache-upgrader.vala index 47d6c10..07bfdbc 100644 --- a/src/plugins/media-export/rygel-media-export-media-cache-upgrader.vala +++ b/src/plugins/media-export/rygel-media-export-media-cache-upgrader.vala @@ -377,6 +377,31 @@ internal class Rygel.MediaExport.MediaCacheUpgrader { this.database.exec ("UPDATE schema_info SET reset_token = '" + UUID.get () + "'"); this.database.exec ("UPDATE schema_info SET version = '12'"); + this.database.exec ("ALTER TABLE object " + + "ADD COLUMN object_update_id INTEGER"); + this.database.exec ("ALTER TABLE object " + + "ADD COLUMN deleted_child_count INTEGER"); + this.database.exec ("ALTER TABLE object " + + "ADD COLUMN container_update_id INTEGER"); + var ids = new ArrayList (); + var cursor = this.database.exec_cursor + ("SELECT upnp_id FROM object"); + foreach (var statement in cursor) { + ids.add (statement.column_text (0)); + } + + uint32 count = 1; + foreach (var id in ids) { + GLib.Value[] args = { count, count, id }; + count++; + this.database.exec ("UPDATE object SET " + + "container_update_id = ?, " + + "object_update_id = ?, " + + "deleted_child_count = 0 " + + "WHERE upnp_id = ?", + args); + } + database.commit (); database.exec ("VACUUM"); database.analyze ();