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

harishgokul01 pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/incubator-resilientdb.git

commit 12267085df38c7557877908b6b4183ca716f3a1e
Merge: 70843091 730432bf
Author: harish876 <[email protected]>
AuthorDate: Mon Dec 15 00:50:48 2025 +0000

    Merge branch 'release-bugs' of 
https://github.com/apache/incubator-resilientdb into development

 .gitignore                                         |   3 +-
 .licenserc.yaml                                    |   4 +
 .../cache/resilient-node-cache/dev/check-license   |  86 --------
 .../cache/resilient-python-cache/dev/check-license |  86 --------
 ecosystem/deployment/ansible/dev/check-license     |  86 --------
 ecosystem/deployment/orbit/dev/check-license       |  86 --------
 ecosystem/graphql/README.md                        |   4 +
 .../graphql/service/tools/data/cert/admin.key.pri  |   2 -
 .../graphql/service/tools/data/cert/admin.key.pub  |   2 -
 .../graphql/service/tools/data/cert/cert_1.cert    | Bin 166 -> 0 bytes
 .../graphql/service/tools/data/cert/cert_2.cert    |   7 -
 .../graphql/service/tools/data/cert/cert_3.cert    |   7 -
 .../graphql/service/tools/data/cert/cert_4.cert    |   6 -
 .../graphql/service/tools/data/cert/cert_5.cert    |   8 -
 .../graphql/service/tools/data/cert/cert_6.cert    | Bin 166 -> 0 bytes
 .../graphql/service/tools/data/cert/cert_7.cert    |   6 -
 .../graphql/service/tools/data/cert/cert_8.cert    | Bin 166 -> 0 bytes
 .../graphql/service/tools/data/cert/cert_9.cert    |   7 -
 .../graphql/service/tools/data/cert/node1.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node1.key.pub  |   3 -
 .../graphql/service/tools/data/cert/node2.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node2.key.pub  |   2 -
 .../graphql/service/tools/data/cert/node3.key.pri  | Bin 36 -> 0 bytes
 .../graphql/service/tools/data/cert/node3.key.pub  |   3 -
 .../graphql/service/tools/data/cert/node4.key.pri  | Bin 36 -> 0 bytes
 .../graphql/service/tools/data/cert/node4.key.pub  |   2 -
 .../graphql/service/tools/data/cert/node5.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node5.key.pub  |   3 -
 .../service/tools/data/cert/node6.key.key.pri      |   2 -
 .../service/tools/data/cert/node6.key.key.pub      |   2 -
 .../graphql/service/tools/data/cert/node6.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node6.key.pub  |   2 -
 .../service/tools/data/cert/node7.key.key.pri      |   2 -
 .../service/tools/data/cert/node7.key.key.pub      |   2 -
 .../graphql/service/tools/data/cert/node7.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node7.key.pub  |   2 -
 .../service/tools/data/cert/node8.key.key.pri      |   2 -
 .../service/tools/data/cert/node8.key.key.pub      |   2 -
 .../graphql/service/tools/data/cert/node8.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node8.key.pub  |   2 -
 .../service/tools/data/cert/node9.key.key.pri      |   2 -
 .../service/tools/data/cert/node9.key.key.pub      |   2 -
 .../graphql/service/tools/data/cert/node9.key.pri  |   2 -
 .../graphql/service/tools/data/cert/node9.key.pub  |   2 -
 ecosystem/sdk/resdb-orm/dev/check-license          |  86 --------
 ecosystem/sdk/resvault-sdk/dev/check-license       |  86 --------
 ecosystem/sdk/rust-sdk/dev/check-license           |  86 --------
 .../smart-contract/rescontract/dev/check-license   |  86 --------
 .../resilient-contract-kit/dev/check-license       |  86 --------
 .../smart-contract-graphql/dev/check-license       |  86 --------
 .../tools/create-resilient-app/dev/check-license   |  86 --------
 ecosystem/tools/resvault/dev/check-license         |  86 --------
 platform/config/BUILD                              |   2 +
 platform/config/resdb_config_test.cpp              | 245 +++++++++++----------
 platform/config/resdb_config_utils.h               |  55 +++--
 service/tools/config/generate_config.sh            |   1 -
 service/tools/config/generate_keys_and_certs.sh    | 154 +++++++++++++
 service/tools/config/interface/service.config      |  19 --
 service/tools/config/server/server.config          |   1 -
 service/tools/data/cert/admin.key.pri              |   2 -
 service/tools/data/cert/admin.key.pub              |   2 -
 service/tools/data/cert/cert_1.cert                | Bin 166 -> 0 bytes
 service/tools/data/cert/cert_2.cert                |   7 -
 service/tools/data/cert/cert_3.cert                |   7 -
 service/tools/data/cert/cert_4.cert                |   6 -
 service/tools/data/cert/cert_5.cert                |   8 -
 service/tools/data/cert/cert_6.cert                | Bin 166 -> 0 bytes
 service/tools/data/cert/cert_7.cert                |   6 -
 service/tools/data/cert/cert_8.cert                | Bin 166 -> 0 bytes
 service/tools/data/cert/cert_9.cert                |   7 -
 service/tools/data/cert/node1.key.pri              |   2 -
 service/tools/data/cert/node1.key.pub              |   3 -
 service/tools/data/cert/node2.key.pri              |   2 -
 service/tools/data/cert/node2.key.pub              |   2 -
 service/tools/data/cert/node3.key.pri              | Bin 36 -> 0 bytes
 service/tools/data/cert/node3.key.pub              |   3 -
 service/tools/data/cert/node4.key.pri              | Bin 36 -> 0 bytes
 service/tools/data/cert/node4.key.pub              |   2 -
 service/tools/data/cert/node5.key.pri              |   2 -
 service/tools/data/cert/node5.key.pub              |   3 -
 service/tools/data/cert/node6.key.key.pri          |   2 -
 service/tools/data/cert/node6.key.key.pub          |   2 -
 service/tools/data/cert/node6.key.pri              |   2 -
 service/tools/data/cert/node6.key.pub              |   2 -
 service/tools/data/cert/node7.key.key.pri          |   2 -
 service/tools/data/cert/node7.key.key.pub          |   2 -
 service/tools/data/cert/node7.key.pri              |   2 -
 service/tools/data/cert/node7.key.pub              |   2 -
 service/tools/data/cert/node8.key.key.pri          |   2 -
 service/tools/data/cert/node8.key.key.pub          |   2 -
 service/tools/data/cert/node8.key.pri              |   2 -
 service/tools/data/cert/node8.key.pub              |   2 -
 service/tools/data/cert/node9.key.key.pri          |   2 -
 service/tools/data/cert/node9.key.key.pub          |   2 -
 service/tools/data/cert/node9.key.pri              |   2 -
 service/tools/data/cert/node9.key.pub              |   2 -
 service/tools/kv/server_tools/generate_config.sh   |   2 +-
 ...nerate_config.sh => generate_keys_and_certs.sh} |   4 +-
 service/tools/kv/server_tools/start_kv_service.sh  |   5 +
 .../kv/server_tools/start_kv_service_monitoring.sh |   4 +
 tools/BUILD                                        |   2 +-
 101 files changed, 328 insertions(+), 1401 deletions(-)

diff --cc platform/config/BUILD
index 0611ac41,0955ada7..45248e94
--- a/platform/config/BUILD
+++ b/platform/config/BUILD
@@@ -44,15 -31,12 +44,17 @@@ cc_library
  cc_test(
      name = "resdb_config_test",
      srcs = ["resdb_config_test.cpp"],
+     timeout = "short",
      deps = [
          ":resdb_config",
+         ":resdb_config_utils",
          "//common/test:test_main",
 +        ":resdb_config_utils",
      ],
 +    data = [
 +    "//platform/config:test.config",
 +    "//platform/config:expect_test.config",
 +    ]
  )
  
  cc_library(
diff --cc platform/config/resdb_config_test.cpp
index 046fae98,089f24ac..1cc6634a
--- a/platform/config/resdb_config_test.cpp
+++ b/platform/config/resdb_config_test.cpp
@@@ -17,125 -17,126 +17,126 @@@
   * under the License.
   */
  
- #include "platform/config/resdb_config.h"
- 
- #include <google/protobuf/util/message_differencer.h>
- #include <gtest/gtest.h>
- #include <filesystem>
- 
- #include <thread>
- 
- #include "resdb_config_utils.h"
- #include "common/test/test_macros.h"
- #include "gmock/gmock.h"
- 
- namespace resdb {
- namespace {
- 
- using ::google::protobuf::util::MessageDifferencer;
- using ::resdb::testing::EqualsProto;
- 
- MATCHER_P(EqualsReplicas, replicas, "") {
-   if (arg.size() != replicas.size()) {
-     return false;
-   }
-   for (size_t i = 0; i < replicas.size(); ++i) {
-     if (!MessageDifferencer::Equals(replicas[i], arg[i])) {
-       return false;
-     }
-   }
-   return true;
- }
- 
- ReplicaInfo GenerateReplicaInfo(const std::string& ip, int port) {
-   ReplicaInfo info;
-   info.set_ip(ip);
-   info.set_port(port);
-   return info;
- }
- 
- /*
- TEST(ResDBConfigTest, ResDBConfig) {
-   ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
- 
-   std::vector<ReplicaInfo> replicas;
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
- 
-   ResDBConfig config(replicas, self_info);
- 
-   EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
-   EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
-   EXPECT_EQ(config.GetReplicaNum(), replicas.size());
-   EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
- }
- 
- TEST(ResDBConfigTest, ResDBConfigWith5Replicas) {
-   ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
- 
-   std::vector<ReplicaInfo> replicas;
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1239));
- 
-   ResDBConfig config(replicas, self_info);
- 
-   EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
-   EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
-   EXPECT_EQ(config.GetReplicaNum(), replicas.size());
-   EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
- }
- 
- TEST(ResDBConfigTest, ResDBConfigWith6Replicas) {
-   ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
- 
-   std::vector<ReplicaInfo> replicas;
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1239));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1240));
- 
-   ResDBConfig config(replicas, self_info);
- 
-   EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
-   EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
-   EXPECT_EQ(config.GetReplicaNum(), replicas.size());
-   EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
- }
- 
- TEST(ResDBConfigTest, ResDBConfigWith2Replicas) {
-   ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
- 
-   std::vector<ReplicaInfo> replicas;
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
-   replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
- 
-   ResDBConfig config(replicas, self_info);
- 
-   EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
-   EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
-   EXPECT_EQ(config.GetReplicaNum(), replicas.size());
-   EXPECT_EQ(config.GetMinDataReceiveNum(), 1);
- }
- */
- 
- TEST(ResDBConfigTest, ResDBConfigFromFile) {
-   const char * file = "platform/config/test.config";
-   const char * ext_file = "platform/config/expect_test.config";
-   ResConfigData config_data = ReadConfigFromFile(file);
-   ResConfigData ext_config_data = ReadConfigFromFile(ext_file);
-   std::cout<<config_data.DebugString()<<std::endl;
- 
-   EXPECT_THAT(config_data, EqualsProto(ext_config_data));
- }
- 
- 
- }  // namespace
- 
- }  // namespace resdb
+  #include "platform/config/resdb_config.h"
+  #include "platform/config/resdb_config_utils.h"
+  #include <filesystem>
+  
+  #include <google/protobuf/util/message_differencer.h>
+  #include <gtest/gtest.h>
+  
+  
+  #include "common/test/test_macros.h"
+  #include "gmock/gmock.h"
+  
+  namespace resdb {
+  namespace {
+  
+  using ::google::protobuf::util::MessageDifferencer;
+  using ::resdb::testing::EqualsProto;
+  using ::resdb::ReadConfig;
+  using ::resdb::ReadConfigFromFile;
+  
+  MATCHER_P(EqualsReplicas, replicas, "") {
+    if (arg.size() != replicas.size()) {
+      return false;
+    }
+    for (size_t i = 0; i < replicas.size(); ++i) {
+      if (!MessageDifferencer::Equals(replicas[i], arg[i])) {
+        return false;
+      }
+    }
+    return true;
+  }
+  
+  ReplicaInfo GenerateReplicaInfo(const std::string& ip, int port) {
+    ReplicaInfo info;
+    info.set_ip(ip);
+    info.set_port(port);
+    return info;
+  }
+  
+  TEST(TcpSocket, ResDBConfig) {
+    ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
+  
+    std::vector<ReplicaInfo> replicas;
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
+  
+    ResDBConfig config(replicas, self_info);
+  
+    EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
+    EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
+    EXPECT_EQ(config.GetReplicaNum(), replicas.size());
+    EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
+  }
+  
+  TEST(TcpSocket, ResDBConfigWith5Replicas) {
+    ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
+  
+    std::vector<ReplicaInfo> replicas;
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1239));
+  
+    ResDBConfig config(replicas, self_info);
+  
+    EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
+    EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
+    EXPECT_EQ(config.GetReplicaNum(), replicas.size());
+    EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
+  }
+  
+  TEST(TcpSocket, ResDBConfigWith6Replicas) {
+    ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
+  
+    std::vector<ReplicaInfo> replicas;
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1237));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1238));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1239));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1240));
+  
+    ResDBConfig config(replicas, self_info);
+  
+    EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
+    EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
+    EXPECT_EQ(config.GetReplicaNum(), replicas.size());
+    EXPECT_EQ(config.GetMinDataReceiveNum(), 3);
+  }
+  
+  TEST(TcpSocket, ResDBConfigWith2Replicas) {
+    ReplicaInfo self_info = GenerateReplicaInfo("127.0.0.1", 1234);
+  
+    std::vector<ReplicaInfo> replicas;
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1235));
+    replicas.push_back(GenerateReplicaInfo("127.0.0,1", 1236));
+  
+    ResDBConfig config(replicas, self_info);
+  
+    EXPECT_THAT(config.GetReplicaInfos(), EqualsReplicas(replicas));
+    EXPECT_THAT(config.GetSelfInfo(), EqualsProto(self_info));
+    EXPECT_EQ(config.GetReplicaNum(), replicas.size());
+    EXPECT_EQ(config.GetMinDataReceiveNum(), 1);
+  }
+  
+  TEST(TcpSocket, ReadConfigFromFile) {
+    std::string config_file = 
"/home/ubuntu/harish_work/incubator-resilientdb/service/tools/config/server/server.config";
 //TODO: make dynamic
+  
+    ResConfigData config_data = ReadConfigFromFile(config_file);
+    ResDBConfig config = ResDBConfig(config_data, ReplicaInfo(), KeyInfo(), 
CertificateInfo());
+  
+    EXPECT_EQ(config_data.region(0).replica_info_size(), 4) 
+        << "Should have 4 replicas as per server.config";
+    EXPECT_EQ(config_data.region(0).replica_info(0).id(), 1);
+    EXPECT_EQ(config_data.region(0).replica_info(0).ip(), "127.0.0.1");
+  }
+  
+  }  // namespace
+  
+  }  // namespace resdb
 - 
++ 
diff --cc platform/config/resdb_config_utils.h
index 1251e64d,8746d06c..778db111
--- a/platform/config/resdb_config_utils.h
+++ b/platform/config/resdb_config_utils.h
@@@ -17,32 -17,29 +17,29 @@@
   * under the License.
   */
  
- #pragma once
- 
- #include <optional>
- 
- #include "platform/config/resdb_config.h"
- 
- namespace resdb {
- 
- std::vector<ReplicaInfo> ReadConfig(const std::string& file_name);
- ReplicaInfo GenerateReplicaInfo(int id, const std::string& ip, int port);
- 
- typedef std::function<std::unique_ptr<ResDBConfig>(
-     const ResConfigData& config_data, const ReplicaInfo& self_info,
-     const KeyInfo& private_key, const CertificateInfo& public_key_cert_info)>
-     ConfigGenFunc;
- 
- std::unique_ptr<ResDBConfig> GenerateResDBConfig(
-     const std::string& config_file, const std::string& private_key_file,
-     const std::string& cert_file,
-     std::optional<ReplicaInfo> self_info = std::nullopt,
-     std::optional<ConfigGenFunc> = std::nullopt);
- 
- ResDBConfig GenerateResDBConfig(const std::string& config_file);
- 
- 
- ResConfigData ReadConfigFromFile(const std::string& file_name);
- 
- }  // namespace resdb
- 
+  #pragma once
+ 
+  #include <optional>
+  
+  #include "platform/config/resdb_config.h"
+  
+  namespace resdb {
+  
+  std::vector<ReplicaInfo> ReadConfig(const std::string& file_name);
+  ResConfigData ReadConfigFromFile(const std::string& file_name);
+  ReplicaInfo GenerateReplicaInfo(int id, const std::string& ip, int port);
+  
+  typedef std::function<std::unique_ptr<ResDBConfig>(
+      const ResConfigData& config_data, const ReplicaInfo& self_info,
+      const KeyInfo& private_key, const CertificateInfo& public_key_cert_info)>
+      ConfigGenFunc;
+  
+  std::unique_ptr<ResDBConfig> GenerateResDBConfig(
+      const std::string& config_file, const std::string& private_key_file,
+      const std::string& cert_file,
+      std::optional<ReplicaInfo> self_info = std::nullopt,
+      std::optional<ConfigGenFunc> = std::nullopt);
+  
+  ResDBConfig GenerateResDBConfig(const std::string& config_file);
+  }  // namespace resdb
 - 
++ 
diff --cc service/tools/config/interface/service.config
index 3d1f8e9c,9cda04c0..e1bcc905
--- a/service/tools/config/interface/service.config
+++ b/service/tools/config/interface/service.config
@@@ -1,20 -1,2 +1,1 @@@
- // Licensed to the Apache Software Foundation (ASF) under one
- // or more contributor license agreements.  See the NOTICE file
- // distributed with this work for additional information
- // regarding copyright ownership.  The ASF licenses this file
- // to you under the Apache License, Version 2.0 (the
- // "License"); you may not use this file except in compliance
- // with the License.  You may obtain a copy of the License at
- //
- //  http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing,
- // software distributed under the License is distributed on an
- // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- // KIND, either express or implied.  See the License for the
- // specific language governing permissions and limitations
- // under the License.
--
  5 127.0.0.1 10005
- 
- 

Reply via email to