This is an automated email from the ASF dual-hosted git repository.

martinzink pushed a commit to branch minifi-api-property
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git

commit 10f9b36d1d423e78303f0c8de0ffdfc4a250c977
Author: Martin Zink <[email protected]>
AuthorDate: Wed Mar 12 13:00:46 2025 +0100

    ListingStateManager::getLatestListedKeyTimestampInMilliseconds shouldnt 
throw
---
 extension-utils/include/utils/ListingStateManager.h | 2 +-
 extension-utils/src/utils/ListingStateManager.cpp   | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/extension-utils/include/utils/ListingStateManager.h 
b/extension-utils/include/utils/ListingStateManager.h
index 0b4a0b7ee..1d84ade10 100644
--- a/extension-utils/include/utils/ListingStateManager.h
+++ b/extension-utils/include/utils/ListingStateManager.h
@@ -57,7 +57,7 @@ class ListingStateManager {
   void storeState(const ListingState &latest_listing_state);
 
  private:
-  [[nodiscard]] static uint64_t 
getLatestListedKeyTimestampInMilliseconds(const std::unordered_map<std::string, 
std::string> &state);
+  [[nodiscard]] uint64_t getLatestListedKeyTimestampInMilliseconds(const 
std::unordered_map<std::string, std::string> &state) const;
   [[nodiscard]] static std::unordered_set<std::string> 
getLatestListedKeys(const std::unordered_map<std::string, std::string> &state);
 
   core::StateManager* state_manager_;
diff --git a/extension-utils/src/utils/ListingStateManager.cpp 
b/extension-utils/src/utils/ListingStateManager.cpp
index 530a9cdff..f54467c56 100644
--- a/extension-utils/src/utils/ListingStateManager.cpp
+++ b/extension-utils/src/utils/ListingStateManager.cpp
@@ -44,7 +44,7 @@ uint64_t ListingState::getListedKeyTimeStampInMilliseconds() 
const {
   return listed_key_timestamp.time_since_epoch() / 
std::chrono::milliseconds(1);
 }
 
-uint64_t ListingStateManager::getLatestListedKeyTimestampInMilliseconds(const 
std::unordered_map<std::string, std::string> &state) {
+uint64_t ListingStateManager::getLatestListedKeyTimestampInMilliseconds(const 
std::unordered_map<std::string, std::string> &state) const {
   std::string stored_listed_key_timestamp_str;
   auto it = state.find(LATEST_LISTED_OBJECT_TIMESTAMP);
   if (it != state.end()) {
@@ -55,7 +55,8 @@ uint64_t 
ListingStateManager::getLatestListedKeyTimestampInMilliseconds(const st
     return *stored_listed_key_timestamp;
   }
 
-  throw std::runtime_error("Invalid listed key timestamp");
+  logger_->log_error("Invalid listed key timestamp, returning 0");
+  return 0;
 }
 
 std::unordered_set<std::string> ListingStateManager::getLatestListedKeys(const 
std::unordered_map<std::string, std::string> &state) {

Reply via email to