)]}'
{
  "commit": "67b221532a14f24e501a50da2078cd3d9b4ef4b7",
  "tree": "985720180260dc18a115b61a3828ab67b89d7f82",
  "parents": [
    "42f6c84397bc522a0b30970b846a91e1873e31df"
  ],
  "author": {
    "name": "khenaidoo",
    "email": "knursimu@ciena.com",
    "time": "Mon Mar 02 16:01:25 2020 -0500"
  },
  "committer": {
    "name": "khenaidoo",
    "email": "knursimu@ciena.com",
    "time": "Tue Mar 03 10:47:45 2020 -0500"
  },
  "message": "[VOL-2688] Improve core model performance\n\nThis commit addresses the low-hanging performance hogs in the\ncore model.  In particular, the following changes are made:\n\n1) Remove proto message comparision when it\u0027s possible.  The proto\nmessage deep comparison is quite expensive.\n2) Since the Core already has a lock on the device/logicaldevice/\nadapters/etc before invoking the model proxy then there is no\nneed for the latter to create an additional lock on these artifacts\nduting an update\n3) The model creates a watch on every artifacts it adds to the KV\nstore.   Since in the next Voltha release we will not be using Voltha\nCore in pairs then there is no point in keeping these watches (these\nis only 1 Core that will ever update an artifact in the next\ndeployment).  This update removes these watch.\n4) Additional unit tests has been created, mostly around flows, in an\nattempt to exercise both the core and the model further.\n\nChange-Id: Ieaf1f6b9b05c56e819600bc55b46a05f73b8efcf\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0bee604df761bde7de6502876b5cb0504dfa8701",
      "old_mode": 33188,
      "old_path": "VERSION",
      "new_id": "ca2d6398a2a86f38c2c8bf15390f9c66f3c0d21a",
      "new_mode": 33188,
      "new_path": "VERSION"
    },
    {
      "type": "modify",
      "old_id": "bec07a563fe3a5b3fcac5ee8b099975af1a0635d",
      "old_mode": 33188,
      "old_path": "db/model/node.go",
      "new_id": "152bf290cbd385447fa48c1935b24aa63b0ffb81",
      "new_mode": 33188,
      "new_path": "db/model/node.go"
    },
    {
      "type": "modify",
      "old_id": "347be0d89626e014ae88ce424c9291c89d06693d",
      "old_mode": 33188,
      "old_path": "db/model/non_persisted_revision.go",
      "new_id": "20aeec3472c92b30ef6cf6c5fc34f62840089fa1",
      "new_mode": 33188,
      "new_path": "db/model/non_persisted_revision.go"
    },
    {
      "type": "modify",
      "old_id": "3637e9adff0048a0f625e7577ae115f1ade4085a",
      "old_mode": 33188,
      "old_path": "db/model/persisted_revision.go",
      "new_id": "15e438c48e2a87dbe3c68de2ed8c307e833d741b",
      "new_mode": 33188,
      "new_path": "db/model/persisted_revision.go"
    },
    {
      "type": "modify",
      "old_id": "3ffc9ff470ea889219e20b44f09db0ccf0e9cf8b",
      "old_mode": 33188,
      "old_path": "db/model/proxy.go",
      "new_id": "303bc4edf2cdf838b5e094eb0f25dd7c4bafcd57",
      "new_mode": 33188,
      "new_path": "db/model/proxy.go"
    },
    {
      "type": "modify",
      "old_id": "346198df0fcffd0353883f2d19de7543800bd013",
      "old_mode": 33188,
      "old_path": "rw_core/core/common_test.go",
      "new_id": "d07a09595a5d35f7abd675d9b3ed44071d8b4679",
      "new_mode": 33188,
      "new_path": "rw_core/core/common_test.go"
    },
    {
      "type": "modify",
      "old_id": "877d99182f36e19bfecb6d811d5d0a197ffba682",
      "old_mode": 33261,
      "old_path": "rw_core/core/device_agent.go",
      "new_id": "42d628a8edf4965b5b2b0ce105bfdfbbd4556599",
      "new_mode": 33261,
      "new_path": "rw_core/core/device_agent.go"
    },
    {
      "type": "modify",
      "old_id": "1abc5658874561973964731789a6501756ad9878",
      "old_mode": 33261,
      "old_path": "rw_core/core/grpc_nbi_api_handler_test.go",
      "new_id": "6122b519e389aedf75b2cf2f260455503d752d15",
      "new_mode": 33261,
      "new_path": "rw_core/core/grpc_nbi_api_handler_test.go"
    },
    {
      "type": "modify",
      "old_id": "2ab98a366a4c04bdfe2ceb7d367ea83775ef9076",
      "old_mode": 33188,
      "old_path": "rw_core/mocks/adapter_olt.go",
      "new_id": "303bae371d584ae84e590fc2f3817972988b7398",
      "new_mode": 33188,
      "new_path": "rw_core/mocks/adapter_olt.go"
    },
    {
      "type": "modify",
      "old_id": "ea02210ad6c6acc1048ce15268a24f26f687aecf",
      "old_mode": 33188,
      "old_path": "rw_core/mocks/adapter_onu.go",
      "new_id": "73ee74981096ea0fc7e932f6a2b15db50586162e",
      "new_mode": 33188,
      "new_path": "rw_core/mocks/adapter_onu.go"
    }
  ]
}
