-local error = error;
+local error, type = error, type;
local setmetatable = setmetatable;
local config = require "core.configmanager";
local datamanager = require "util.datamanager";
local modulemanager = require "core.modulemanager";
+local multitable = require "util.multitable";
local hosts = hosts;
local log = require "util.logger".init("storagemanager");
if not driver then
if driver_name ~= "internal" then
modulemanager.load(host, "storage_"..driver_name);
+ return stores_available:get(host, driver_name);
else
return setmetatable({host = host}, default_driver_mt);
end
driver_name = config.get(host, "core", "default_storage");
driver = load_driver(host, driver_name);
if not driver then
+ if storage or driver_name then
+ log("warn", "Falling back to default driver for %s storage on %s", store, host);
+ end
driver_name = "internal";
- log("warn", "Falling back to default driver for %s storage on %s", store, host);
driver = load_driver(host, driver_name);
end
end