diff --git a/src/nebula/Nebula.cc b/src/nebula/Nebula.cc
index 01410a467f..f3e0b5b164 100644
--- a/src/nebula/Nebula.cc
+++ b/src/nebula/Nebula.cc
@@ -322,8 +322,6 @@ void Nebula::start(bool bootstrap_only)
rc += GroupQuotas::bootstrap(db);
rc += SecurityGroupPool::bootstrap(db);
rc += VirtualRouterPool::bootstrap(db);
- rc += MarketPlacePool::bootstrap(db);
- rc += MarketPlaceAppPool::bootstrap(db);
// Create the system tables only if bootstrap went well
if (rc == 0)
@@ -346,6 +344,8 @@ void Nebula::start(bool bootstrap_only)
rc += AclManager::bootstrap(db);
rc += ZonePool::bootstrap(db);
rc += VdcPool::bootstrap(db);
+ rc += MarketPlacePool::bootstrap(db);
+ rc += MarketPlaceAppPool::bootstrap(db);
// Create the system tables only if bootstrap went well
if ( rc == 0 )
diff --git a/src/onedb/local/4.13.85_to_4.90.0.rb b/src/onedb/local/4.13.85_to_4.90.0.rb
index 78a9c6ab2a..3471dbc154 100644
--- a/src/onedb/local/4.13.85_to_4.90.0.rb
+++ b/src/onedb/local/4.13.85_to_4.90.0.rb
@@ -88,42 +88,6 @@ module Migrator
log_time()
- ########################################################################
- # OpenNebula Systems MarketPlace
- ########################################################################
-
- oneadmin_uname = nil
-
- @db.fetch("SELECT name FROM user_pool WHERE oid=0") do |row|
- oneadmin_uname = row[:name]
- end
-
- if oneadmin_uname == nil
- puts "Error trying to read oneadmin's user name ('SELECT name FROM user_pool WHERE oid=0')"
- return false
- end
-
- oneadmin_gname = nil
-
- @db.fetch("SELECT name FROM group_pool WHERE oid=0") do |row|
- oneadmin_gname = row[:name]
- end
-
- if oneadmin_gname == nil
- puts "Error trying to read oneadmin's group name ('SELECT name FROM group_pool WHERE oid=0')"
- return false
- end
-
- @db.run "CREATE TABLE marketplace_pool (oid INTEGER PRIMARY KEY, name VARCHAR(128), body MEDIUMTEXT, uid INTEGER, gid INTEGER, owner_u INTEGER, group_u INTEGER, other_u INTEGER);"
-
- @db.run "INSERT INTO marketplace_pool VALUES(0,'OpenNebula Public','000#{oneadmin_uname}#{oneadmin_gname}OpenNebula Public000111100100',0,0,1,1,1);"
-
- @db.run "INSERT INTO pool_control VALUES('marketplace_pool',99);"
-
- @db.run "CREATE TABLE marketplaceapp_pool (oid INTEGER PRIMARY KEY, name VARCHAR(128), body MEDIUMTEXT, uid INTEGER, gid INTEGER, owner_u INTEGER, group_u INTEGER, other_u INTEGER, UNIQUE(name,uid));"
-
- log_time()
-
# 3671
@db.run "ALTER TABLE template_pool RENAME TO old_template_pool;"
diff --git a/src/onedb/shared/4.11.80_to_4.90.0.rb b/src/onedb/shared/4.11.80_to_4.90.0.rb
index ef543f98a5..a63d2b44ac 100644
--- a/src/onedb/shared/4.11.80_to_4.90.0.rb
+++ b/src/onedb/shared/4.11.80_to_4.90.0.rb
@@ -128,6 +128,40 @@ module Migrator
log_time()
+ # Feature #4217
+
+ oneadmin_uname = nil
+
+ @db.fetch("SELECT name FROM user_pool WHERE oid=0") do |row|
+ oneadmin_uname = row[:name]
+ end
+
+ if oneadmin_uname == nil
+ puts "Error trying to read oneadmin's user name ('SELECT name FROM user_pool WHERE oid=0')"
+ return false
+ end
+
+ oneadmin_gname = nil
+
+ @db.fetch("SELECT name FROM group_pool WHERE oid=0") do |row|
+ oneadmin_gname = row[:name]
+ end
+
+ if oneadmin_gname == nil
+ puts "Error trying to read oneadmin's group name ('SELECT name FROM group_pool WHERE oid=0')"
+ return false
+ end
+
+ @db.run "CREATE TABLE marketplace_pool (oid INTEGER PRIMARY KEY, name VARCHAR(128), body MEDIUMTEXT, uid INTEGER, gid INTEGER, owner_u INTEGER, group_u INTEGER, other_u INTEGER);"
+
+ @db.run "INSERT INTO marketplace_pool VALUES(0,'OpenNebula Public','000#{oneadmin_uname}#{oneadmin_gname}OpenNebula Public000111100100',0,0,1,1,1);"
+
+ @db.run "INSERT INTO pool_control VALUES('marketplace_pool',99);"
+
+ @db.run "CREATE TABLE marketplaceapp_pool (oid INTEGER PRIMARY KEY, name VARCHAR(128), body MEDIUMTEXT, uid INTEGER, gid INTEGER, owner_u INTEGER, group_u INTEGER, other_u INTEGER, UNIQUE(name,uid));"
+
+ log_time()
+
return true
end