)]}'
{
  "log": [
    {
      "commit": "ef6650dd3bfa6247917f430e4d123827b5ba3ed9",
      "tree": "8a9488762c6df8f0b8132e1c520bc77d1d34e50e",
      "parents": [
        "90cd955106f8b6924041e0e0d6ddf843a4ceaff4"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Thu Jul 18 12:15:09 2019 -0400"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Fri Jul 19 15:08:24 2019 +0000"
      },
      "message": "VOL-1775 VOL-1779 VOL-1780 : Fix several issues with overall stability\n\n- Apply changes as reported by golang race utility\n- Added version attribute in KV object\n- Added context object to db/model api\n- Carrying timestamp info through context to help in the\n  decision making when applying a revision change\n- Replaced proxy access control mechanism with etcd reservation mechanism\n\nChange-Id: If3d142a73b1da0d64fa6a819530f297dbfada2d3\n"
    },
    {
      "commit": "c92d107dc36ff962602a6a4781eefbf25d875db6",
      "tree": "6f14aa912094e56a2d787c7bea60068545ce15bb",
      "parents": [
        "926614644463b9b330936a39d6f3f8af88f141ca"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Fri Jun 07 16:21:49 2019 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Fri Jun 07 16:21:49 2019 -0400"
      },
      "message": "VOL-1687 : Fix wrong in-memory node assignments\n\n- Fixed nil pointer with createProxy\n- Changed watch loop to avoid re-starting when rev changes\n\nChange-Id: Ie821788f2422d7a2083398c65b9632c65fae001d\n"
    },
    {
      "commit": "802aca48623560437ec03b52c7b7c73f37ff965a",
      "tree": "5504fdf503f99949e64bcfe1431a231c5e76828f",
      "parents": [
        "5a4a21234a6e9d3b66c9738bc7f5e18772a55859"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue May 21 12:19:28 2019 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue May 21 15:01:49 2019 -0400"
      },
      "message": "VOL-1616 / VOL-1611 : Fix device state issue and memory discrepencies\n\n- Applied mutex on node object to resolve in-memory data conflicts\n- Introduced a refresh period for in-memory data\n\nAmendments:\n\n- Fixed node.go file format\n- Bumped VERSION to 2.1.0-dev\n- Use a RLock for GetLastUpdate\n\nChange-Id: I57e88fe3ec5cceed0d4fcdb240ae9191b49ebe33\n"
    },
    {
      "commit": "7512fc898c89494edeb4d3b7ee24ff9588ca4b87",
      "tree": "4822536d5f50c26834f669af39106dbe258d4a1a",
      "parents": [
        "259a6f7ad2e0953a4a7c3de671a10cf4adaeedce"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue May 07 12:25:46 2019 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue May 07 14:20:11 2019 -0400"
      },
      "message": "VOL-1584: Fix for multi-core cli infinite loop\n\n- Reduced number of calls to kv\n- Re-introduced cache logic for in-memory data access\n- Misc log updates\n\nAmendments:\n\n- Ensure that we clone the returned cache data\n- Give priority to cache but use alternate get methods otherwise\n\nChange-Id: I56ce67f22d9945b7a194f4c6aab0c7fd75dd2f2e\n"
    },
    {
      "commit": "40fd3b2ebed11a85581b2f34f74c74e54cfc306a",
      "tree": "e70b73b2561d074b549945d8e705461f40ae60ec",
      "parents": [
        "142516e3824069a87b34b9255df09f4569213953"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue Apr 23 21:50:47 2019 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue Apr 23 21:50:47 2019 -0400"
      },
      "message": "VOL-1497 : Further improved data synchronization between cores\n\n- Introduced locking when modifying branches\n- Introduced locking when modifying rev children\n- Rewrote persistence loading logic to avoid unecessary changes\n- Access controlled CreateProxy to ensure a proxy is not created\n  against an incomplete device entry\n- Removed locking logic from etcd client\n- Replaced revision merging logic with persistence loading\n\nVOL-1544 : Cleanup revisions to improve overall performance\n\n- Ensure that old revisions are discarded\n- Ensure that children do not contain discarded revisions\n- Disabled cache logic for now\n\nChange-Id: I1b952c82aba379fce64a47a71b5309a6f28fb5ff\n"
    },
    {
      "commit": "f7fc1788f86c11b2cd678853a965db52795a1344",
      "tree": "05b4306815fd2a601fd05c3e975e9e7bb72c32d5",
      "parents": [
        "1ce37ad5ed1e75e11a2546fcb325529f435dd211"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Thu Mar 28 22:33:41 2019 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Thu Mar 28 22:41:01 2019 -0400"
      },
      "message": "VOL-1543 : Fix to properly delete a device from storage\n\nChange-Id: I52d37d947ee6aaf4108fb8252951a123a2829d0c\n"
    },
    {
      "commit": "3cb0122930cc7273cbddd4a275987395500bdb18",
      "tree": "3d6bcdc2f0230c08c31efbd3a3608ee3d0e0853c",
      "parents": [
        "38afd0dc5cbf6dbbb05800699c8aae8869c748d3"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Wed Jan 16 17:15:56 2019 -0500"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Mon Jan 21 18:46:12 2019 +0000"
      },
      "message": "VOL-1387 : Fixed issue introduced with watch mechanism submission\n\n- Added flag to determine when a revision is watched\n- Added flag to determine when a revision is stored\n- Refactored confusing method names for Set/GetChildren\n- Fixed issue with deletion of devices due to previous submission\n\nChange-Id: I68c46951f9d40d47e4e74854bba449c9fec4a427\n"
    },
    {
      "commit": "e0a4c79f591cf51f55276b9895016012b488bf58",
      "tree": "a611b076a5028437cd2c5a333f8c15fd0de85f96",
      "parents": [
        "d046be899b697e6c82de5673b56b79935b449345"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Wed Jan 16 11:26:29 2019 -0500"
      },
      "committer": {
        "name": "khenaidoo Nursimulu",
        "email": "knursimu@ciena.com",
        "time": "Wed Jan 16 16:48:45 2019 +0000"
      },
      "message": "VOL-1387 : Added watch mechanism\n\n- Fixed a few failure cases\n- Adjusted a few logs\n\nChange-Id: Ied1ecb3d8996a338eee00e9643685482700e860b\n"
    },
    {
      "commit": "1ab4327bd1f6f0b069e0af70e402c57a72425c6f",
      "tree": "64a77d2c9a4c94c55cd015a449bdaeba5094fc6d",
      "parents": [
        "ab8e25365ef0d44ef15f5c50efb16c7c1261ab05"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Sat Dec 08 21:42:13 2018 -0500"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Sat Dec 08 21:42:13 2018 -0500"
      },
      "message": "VOL-1173 : Removed hash based storage; replaced with per device protobuf\n\n- Ensured proxies issue callbacks instead of forcing with goroutines\n- Fixed mutex issue with proxy component\n\nChange-Id: Idabd3257c6d264c0f607ee228e406810304dab43\n"
    },
    {
      "commit": "06c4a74a28b448d56a3efc82a13b9b1d11482134",
      "tree": "7c247c5f5edac6f326ef84fa9c82964febe5a694",
      "parents": [
        "88fbe7f5f05cfb71efb3d0baefba7301bfc8d296"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Mon Oct 01 11:09:32 2018 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Mon Oct 01 11:09:32 2018 -0400"
      },
      "message": "VOL-1255: Fixed an issue with the proxy implementation\n\n- Had to change the model slightly to mimic a polymorphic behaviour\n\nChange-Id: I12017cdfedf5c0ed05243245aa2a811556222e0f\n"
    },
    {
      "commit": "88fbe7f5f05cfb71efb3d0baefba7301bfc8d296",
      "tree": "c9f2bbf0c0604475e1b26cd1426bb0cc81ceef6d",
      "parents": [
        "7da372dc4eeb1865fe0115354aad098398aa15be"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue Sep 25 12:25:23 2018 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Tue Sep 25 12:25:23 2018 -0400"
      },
      "message": "VOL-1174: Keep only latest data and apply changes only when committed.\n\nChange-Id: I2311eb9cf1487b39f23066df50d19b47fd5c7dcc\n"
    },
    {
      "commit": "ec0919b4527fcc7fcc531d78c687b1bfbadcdf0f",
      "tree": "828a21f3b930388aa8281535aec86e6472ed84e9",
      "parents": [
        "bf6e7bb28d756618e6e721a90e1ec64f6490f2f1"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Wed Sep 05 14:14:29 2018 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Wed Sep 05 14:14:29 2018 -0400"
      },
      "message": "VOL-1175: Added proxy CRUD for new data model\n\nChange-Id: Ie218a2567746d87a951f23aa6b774b2f01541cf9\n"
    },
    {
      "commit": "bf6e7bb28d756618e6e721a90e1ec64f6490f2f1",
      "tree": "9e3c147ce12a542568f7aba92fd17289f1f4b849",
      "parents": [
        "7dfae95a70e8c04d8c7d7c90eb2caf3654778e33"
      ],
      "author": {
        "name": "khenaidoo",
        "email": "knursimu@ciena.com",
        "time": "Tue Aug 14 22:27:29 2018 -0400"
      },
      "committer": {
        "name": "khenaidoo",
        "email": "knursimu@ciena.com",
        "time": "Tue Aug 14 22:27:29 2018 -0400"
      },
      "message": "[VOL-1158] Initial commit of grpc voltha service handler.  Also\nadd license to all files.\n\nChange-Id: I923a53504c74939c1db8177df6197694f2c2b3cd\n"
    },
    {
      "commit": "4a2564d4414c89e742d4063a2dac7dc41a13d4bb",
      "tree": "b9786a70f45a6858d4703063af41bfc5f606678c",
      "parents": [
        "5c11af796e0cc753f90636a44032894a8fac3f66"
      ],
      "author": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Thu Jul 26 11:02:58 2018 -0400"
      },
      "committer": {
        "name": "Stephane Barbarie",
        "email": "sbarbari@ciena.com",
        "time": "Thu Jul 26 11:03:09 2018 -0400"
      },
      "message": "VOL-1027 : Initial commit of voltha 2.0 data model\n\nChange-Id: Ib8006de1af2166281ccf1c9d7c2b9156991bf4e4\n"
    }
  ]
}
