In some cases bdev->collect_alerts() was called twice on the same device.
It happened when DB and SLOW are the same device.
Now only called once.
It made no difference when we just set alert string,
but with EXTBLKDEV we append warning message.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
}
void BlueFS::collect_alerts(osd_alert_list_t& alerts) {
- if (bdev[BDEV_DB]) {
+ if (bdev[BDEV_DB] &&
+ (!is_shared_alloc(BDEV_DB) /*BlueStore is collecting alerts for its bdev*/) ) {
bdev[BDEV_DB]->collect_alerts(alerts, "DB");
}
- if (bdev[BDEV_WAL]) {
+ if (bdev[BDEV_WAL] /*WAL is never shared*/) {
bdev[BDEV_WAL]->collect_alerts(alerts, "WAL");
}
_update_logger_stats(); // just to have it updated more frequently