diff --git a/src/datastore/Datastore.cc b/src/datastore/Datastore.cc index cd7458ee54..16a7f85738 100644 --- a/src/datastore/Datastore.cc +++ b/src/datastore/Datastore.cc @@ -508,6 +508,9 @@ int Datastore::replace_template(const string& tmpl_str, string& error_str) if ( type == SYSTEM_DS ) { new_ds_mad = "-"; + + // System DS are not monitored, clear current info + update_monitor(0, 0, 0); } else { diff --git a/src/image/ImageManager.cc b/src/image/ImageManager.cc index 5f6ca26370..c71f931aa6 100644 --- a/src/image/ImageManager.cc +++ b/src/image/ImageManager.cc @@ -203,6 +203,12 @@ void ImageManager::monitor_datastore(int ds_id) return; } + if ( ds->get_type() == Datastore::SYSTEM_DS ) + { + ds->unlock(); + return; + } + drv_msg = ImageManager::format_message("", ds->to_xml(ds_data)); oss << "Monitoring datastore " << ds->get_name() << " (" << ds_id << ")";