aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralexvru <alexvru@ydb.tech>2023-02-22 13:41:28 +0300
committeralexvru <alexvru@ydb.tech>2023-02-22 13:41:28 +0300
commit97c20564c62e7a829ffcc73278bfdf186196c047 (patch)
tree72eb4484bd0ab97197aeed18351574835f690ad9
parentaf0b2f5fabca4986dda937439e8b460f13cef2a6 (diff)
downloadydb-97c20564c62e7a829ffcc73278bfdf186196c047.tar.gz
Show correct erasure type for BlobDepot-driven groups
-rw-r--r--ydb/core/node_whiteboard/node_whiteboard.h3
-rw-r--r--ydb/core/protos/node_whiteboard.proto1
-rw-r--r--ydb/core/viewer/content/v2/storage.js19
3 files changed, 22 insertions, 1 deletions
diff --git a/ydb/core/node_whiteboard/node_whiteboard.h b/ydb/core/node_whiteboard/node_whiteboard.h
index 05aa018e92..a95ac0d348 100644
--- a/ydb/core/node_whiteboard/node_whiteboard.h
+++ b/ydb/core/node_whiteboard/node_whiteboard.h
@@ -312,6 +312,9 @@ struct TEvWhiteboard{
if (groupInfo->GetEncryptionMode() != TBlobStorageGroupInfo::EEM_NONE) {
Record.SetEncryption(true);
}
+ if (groupInfo->BlobDepotId) {
+ Record.SetBlobDepotId(*groupInfo->BlobDepotId);
+ }
}
};
diff --git a/ydb/core/protos/node_whiteboard.proto b/ydb/core/protos/node_whiteboard.proto
index 03c9df2e86..82f4b547ca 100644
--- a/ydb/core/protos/node_whiteboard.proto
+++ b/ydb/core/protos/node_whiteboard.proto
@@ -241,6 +241,7 @@ message TBSGroupStateInfo {
optional uint64 WriteThroughput = 18;
optional bool Encryption = 19;
repeated uint32 VDiskNodeIds = 20;
+ optional uint64 BlobDepotId = 21; // if set, then this is virtual group
}
message TEvBSGroupStateRequest {
diff --git a/ydb/core/viewer/content/v2/storage.js b/ydb/core/viewer/content/v2/storage.js
index 9be2ca1be6..f9c7170713 100644
--- a/ydb/core/viewer/content/v2/storage.js
+++ b/ydb/core/viewer/content/v2/storage.js
@@ -133,7 +133,24 @@ Storage.prototype.appear = function() {
if (!this.visible) {
var row = $(this.domElement);
- row.append($('<td>', {class: 'storage_erasure', text: this.ErasureSpecies}));
+ var erasureElem;
+
+ if (this.BlobDepotId === undefined) {
+ erasureElem = $('<td>', {class: 'storage_erasure', text: this.ErasureSpecies});
+ } else if (!this.BlobDepotId) {
+ erasureElem = $('<td>', {text: 'BlobDepot (error)'});
+ } else {
+ erasureElem = $('<td>');
+ var link = $('<a>', {
+ 'href': '../../../tablets/app?TabletID=' + this.BlobDepotId,
+ 'text': 'BlobDepot',
+ 'title': this.BlobDepotId
+ });
+ erasureElem.html(link);
+ }
+
+ row.append(erasureElem);
+
row.append(this.storageUnits = $('<td>', {class: 'storage_units'}));
row.append(this.allocatedSize = $('<td>'));
row.append(this.availableSize = $('<td>'));