diff options
Diffstat (limited to 'src/components/policy/src/policy/src/cache_manager.cc')
-rw-r--r-- | src/components/policy/src/policy/src/cache_manager.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/components/policy/src/policy/src/cache_manager.cc b/src/components/policy/src/policy/src/cache_manager.cc index 67348c1e90..c6df31f35a 100644 --- a/src/components/policy/src/policy/src/cache_manager.cc +++ b/src/components/policy/src/policy/src/cache_manager.cc @@ -1046,6 +1046,16 @@ bool CacheManager::Init(const std::string& file_name) { case InitResult::SUCCESS: { LOG4CXX_INFO(logger_, "Policy Table was inited successfully"); result = LoadFromFile(file_name); + + utils::SharedPtr<policy_table::Table> snapshot = GenerateSnapshot(); + result &= snapshot->is_valid(); + LOG4CXX_DEBUG(logger_, "Check if snapshot is valid: " + << std::boolalpha << result); + if(!result) { + rpc::ValidationReport report("policy_table"); + snapshot->ReportErrors(&report); + } + } break; default: { result = false; |