From 85be6f3f84d38ace5c28c752e33fa7afbe497078 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn?= Date: Wed, 5 May 2010 19:18:37 +0200 Subject: [PATCH] feature #206: DB xml dump of VMs with history items now works for both Sqlite and MySQL. --- src/vm/VirtualMachinePool.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/vm/VirtualMachinePool.cc b/src/vm/VirtualMachinePool.cc index ea42ddb522..9bed8646ef 100644 --- a/src/vm/VirtualMachinePool.cc +++ b/src/vm/VirtualMachinePool.cc @@ -361,13 +361,15 @@ int VirtualMachinePool::dump(ostringstream& oss, const string& where) cmd << "SELECT " << VirtualMachine::table << ".*, " << "user_pool.user_name, " << History::table << ".* FROM " << VirtualMachine::table - << " LEFT OUTER JOIN (SELECT *,MAX(seq) FROM " - << History::table << " GROUP BY vid) AS " << History::table + << " LEFT OUTER JOIN (" + << "SELECT *,seq AS max_seq FROM " << History::table << " h1 WHERE " + << "seq=(SELECT MAX(seq) FROM " << History::table << " h2 WHERE h1.vid=h2.vid)) " + << "AS " << History::table << " ON " << VirtualMachine::table << ".oid = " << History::table << ".vid LEFT OUTER JOIN (SELECT oid,user_name FROM " << "user_pool) AS user_pool ON " << VirtualMachine::table << ".uid = user_pool.oid WHERE " - << VirtualMachine::table << ".state != " << VirtualMachine::DONE; + << VirtualMachine::table << ".state <> " << VirtualMachine::DONE; if ( !where.empty() ) {