From 7669b5e0be7dd431b4285e8c4d74037d6a3b3fa7 Mon Sep 17 00:00:00 2001 From: Jens Georg Date: Sat, 15 Dec 2012 13:19:50 +0100 Subject: [PATCH] media-export: Fix database upgrade to version 12 --- .../rygel-media-export-media-cache-upgrader.vala | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) 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 (); -- 2.7.4