diff options
author | robdrynkin <robdrynkin@yandex-team.com> | 2023-10-10 13:51:26 +0300 |
---|---|---|
committer | robdrynkin <robdrynkin@yandex-team.com> | 2023-10-10 14:52:33 +0300 |
commit | 13ce9e31dbde797ddeb98e94172fc9ad61b1ff52 (patch) | |
tree | 5538a6cbda97a659b67a62ee7a3b78c0d44df513 | |
parent | 89249de51f7fbc165ebf2de7354b54f1f89f8e5f (diff) | |
download | ydb-13ce9e31dbde797ddeb98e94172fc9ad61b1ff52.tar.gz |
KIKIMR-19471: Color log chunks details
-rw-r--r-- | ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp | 2 | ||||
-rw-r--r-- | ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp | 5 | ||||
-rw-r--r-- | ydb/core/blobstorage/pdisk/blobstorage_pdisk_state.h | 2 |
3 files changed, 8 insertions, 1 deletions
diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp index 85c4a40aee8..c0be406a661 100644 --- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp +++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl.cpp @@ -744,6 +744,7 @@ void TPDisk::AskVDisksToCutLogs(TOwner ownerFilter, bool doForce) { << " cutLog# " << cutLog->ToString()); ActorSystem->Send(new IEventHandle(OwnerData[chunkOwner].CutLogId, PDiskActor, cutLog.Release(), IEventHandle::FlagTrackDelivery, 0)); + OwnerData[chunkOwner].AskedFreeUpToLsn = lsn; OwnerData[chunkOwner].AskedToCutLogAt = now; // ADD_RECORD_WITH_TIMESTAMP_TO_OPERATION_LOG(OwnerData[chunkOwner].OperationLog, "System owner asked to cut log, OwnerId# " << chunkOwner); } else { @@ -788,6 +789,7 @@ void TPDisk::AskVDisksToCutLogs(TOwner ownerFilter, bool doForce) { } ActorSystem->Send(new IEventHandle(OwnerData[ownerFilter].CutLogId, PDiskActor, cutLog.Release(), IEventHandle::FlagTrackDelivery, 0)); + OwnerData[ownerFilter].AskedFreeUpToLsn = lsn; OwnerData[ownerFilter].AskedToCutLogAt = now; // ADD_RECORD_WITH_TIMESTAMP_TO_OPERATION_LOG(OwnerData[ownerFilter].OperationLog, "User owner asked to cut log, OwnerId# " << ownerFilter); } else { diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp index ed176579cc7..2e0d94d9af3 100644 --- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp +++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_impl_http.cpp @@ -287,9 +287,12 @@ void TPDisk::OutputHtmlLogChunksDetails(TStringStream &str) { for (ui32 owner : activeOwners) { if (owner < it->OwnerLsnRange.size()) { const TLogChunkInfo::TLsnRange &range = it->OwnerLsnRange[owner]; + const auto askedFreeUpToLsn = OwnerData[owner].AskedFreeUpToLsn; if (range.IsPresent) { TABLED() { - str << "[" << range.FirstLsn << ", " << range.LastLsn << "]"; + str << "<font color=\"" << (range.LastLsn < askedFreeUpToLsn ? "red" : "black") <<"\">" + << "[" << range.FirstLsn << ", " << range.LastLsn << "]" + << "</font>"; } } else { TABLED() {str << "-";} diff --git a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_state.h b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_state.h index a8ccc2d741d..9625e138e40 100644 --- a/ydb/core/blobstorage/pdisk/blobstorage_pdisk_state.h +++ b/ydb/core/blobstorage/pdisk/blobstorage_pdisk_state.h @@ -68,6 +68,7 @@ struct TOwnerData { ui64 LogRecordsConsequentlyRead = 0; TOwnerRound OwnerRound = 0; TInstant AskedToCutLogAt; + ui64 AskedFreeUpToLsn = 0; TInstant CutLogAt; ui64 LastSeenLsn = 0; bool HasAlreadyLoggedThisIncarnation = false; @@ -157,6 +158,7 @@ struct TOwnerData { str << " LogRecordsConsequentlyRead# " << LogRecordsConsequentlyRead; str << " OwnerRound# " << OwnerRound; str << " AskedToCutLogAt# " << AskedToCutLogAt; + str << " AskedFreeUpToLsn# " << AskedFreeUpToLsn; str << " CutLogAt# " << CutLogAt; str << " LastSeenLsn# " << LastSeenLsn; if (HasAlreadyLoggedThisIncarnation) { |