)]}'
{
  "log": [
    {
      "commit": "dfed511cd627748046d90894f8600331413b1cd3",
      "tree": "1009fc7740d373f84ac8829ed598fc6a8bea51de",
      "parents": [
        "220e83e2c083b34ee77bc6cc7145027183ae9d00"
      ],
      "author": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Fri Feb 08 01:44:14 2019 +0000"
      },
      "committer": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Sun Feb 10 19:10:30 2019 +0000"
      },
      "message": "Improve race conditions/MySQL reconnection\n\nThis commit aims to provide a better synchronization between all the\ndifferent threads in RO, specially regarding DB usage and internal state\nconsistency.\n\nThe following improvements were done:\n\n1. Centralize database retry logic into a single function\n\n  This way we can change the procedure and the rules for retrying in a\n  single place and this reflects in several functions simultaneously\n  avoiding the need for manual copy and paste (and the potential risk of\n  forgetting to change somewhere)\n\n2. Minor fixes/improvements related to database connection loss.\n\n  Previously `db_base` was already able to identify when the connection\n  to MySQL was lost, but apparently in a few edge cases the automatic\n  reconnection was not done.\n\n3. Implement a transaction method\n\n  This method replaces the old context manager API for the connection\n  object that was removed from MySQLdb in version 1.4\n\n  In additional it is possible to use a decorator for transactions\n  (not only the context manager), which is handy sometimes.\n\n4. Add lock mechanism directly to db_base\n\n  This helps to improve synchronization between threads.\n  Some extra synchronization was introduced to functions, as it seemed\n  to be the case.\n  Moreover, previously, the cursor object was part of the internal state\n  of the db_base object, and it was being changed/used without thread\n  synchronization (error-prone). Having the locking mechanism around the\n  changes in the cursor property of the class, avoids problems.\n\n5. Add option to fork connection\n\n  Useful when independent threading is needed (as long as different\n  threads don\u0027t access the same database table, having separated\n  connections and locks should work fine).\n\nChange-Id: I3ab34df5e8c2857d96ed14a70e7f65bd0b5189a0\nSigned-off-by: Anderson Bravalheri \u003ca.bravalheri@bristol.ac.uk\u003e\n"
    },
    {
      "commit": "4070e445031751ffe371b44928580f0ff6f383c9",
      "tree": "68868bdc4097d24d01d2a40bc87e848a2dcf112a",
      "parents": [
        "db1b22de8331161d80ef3a65ffd41ba8ea206cb9"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Jan 23 10:19:23 2019 +0000"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Thu Jan 24 16:24:38 2019 +0000"
      },
      "message": "adding external port to SDN-Assist when connected to WIM\n\nChange-Id: Ic6902950915a8fde50d162cf425c1851e5bc001c\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "c5293def02d95ed4ee086dd8842437b76ec05c4e",
      "tree": "3fd396ff7db3013fd1d78be6d662be10a6bea0a3",
      "parents": [
        "0446cd5df24c38f95cea13b995c553e9b2403f21",
        "7fe82640f590cc66a9b11adf0d25abceedf892de"
      ],
      "author": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Wed Nov 28 17:21:26 2018 +0000"
      },
      "committer": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Wed Nov 28 17:21:26 2018 +0000"
      },
      "message": "Merge remote-tracking branch \u0027upstream/master\u0027 into gerrit-submission\n\nSync with master branch\n\nChange-Id: Ic26d043a84f50f48eeebffb512ccea2eedc053a4\nSigned-off-by: Anderson Bravalheri \u003ca.bravalheri@bristol.ac.uk\u003e\n"
    },
    {
      "commit": "0446cd5df24c38f95cea13b995c553e9b2403f21",
      "tree": "c44cdd6e13913129dee35afff428e01c8dcd2d8b",
      "parents": [
        "63056c57eea17465ada68bcc076a0159d9c5f93f"
      ],
      "author": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Fri Aug 17 15:26:19 2018 +0100"
      },
      "committer": {
        "name": "Anderson Bravalheri",
        "email": "a.bravalheri@bristol.ac.uk",
        "time": "Fri Nov 16 10:57:14 2018 +0000"
      },
      "message": "Implement feature 5949\n\nEnable dynamic connectivity setup in multi-site Network Services\n\nThe code required to implement the feature is contained in `osm_ro/wim`\nas much as possible.\n\n* `wim/engine.py` works together with `nfvo.py` to implement the\n  feature\n* `wim/persistence.py` is equivalent to `nfvo_db.py` and try to\n  encapsulate most of the SQL-specific code, implementing a persistence\n  layer\n* `wim/http_handler.py` extends `httpserver.py` adding WIM-related HTTP\n  routes\n* `wim/wim_thread.py` is similar to `vim_thread.py` and controls the\n  execution of WIM-related tasks\n* `wim/actions.py` and `wim/wan_link_actions.py` implement the action\n  handling specific code, calling instances of the `wim/wimconn.py`\n  subclasses\n\nWIM connectors are still a work in progress\n\nIndividual change details (newer to older)\n\n- Add errors for inconsistent state\n\n- Delay re-scheduled tasks\n\n- Move lock to inside the persistence object\n\n- Better errors for connector failures\n\n- Try to cache the wan_link information before it is deleted from the database\n\n- Integrate WanLinkDelete to NFVO\n\n- Add WanLinkDelete implementation draft with some tests\n\n- Add basic wim network creation\n\n- Add minimal documentation for actions\n\n- Add checks to the create action\n\n- Improve documentation, rearrange insert_pending and remove unused functions on WimThread\n\n- Integrate Action classes in refresh_tasks\n\n- Add Action classes to avoid intricate conditions\n\n- Adding Proposed License\n\n- Move grouping of actions to persistence\n\n- Change WimThread to use SQL to do the heavy lifting\n\n- Simplify WimThread reload_actions\n\n- Add tests for derive_wan_links\n\n- Implement find_common_wim(s)\n\n- Add tests for create_wim_account\n\n- Add migration scripts for version 33\n\n- Changes to WIM and VIM threads for vim_wim_actions\n\n- Implement wim_account management according to the discussion\n\n- Add WimHandler integration inside httpserver\n\n- Add quick instructions to run the tests\n\n- Add WIM functional tests using real database\n\n- Add DB WIM port mapping\n\n- RO WIM-related console scripts\n\n- Add WIM integration to NFVO\n\n- Improve database support focusing on tests\n\n- RO NBI WIM-related commands in HTTP server\n\n- Adding WIM tables to MANO DB\n\n- Add wim http handler initial implementation\n\n- Move http utility functions to separated files\n\n    This separation allows the code to be reused more easily and avoids\n    circular dependencies.\n\n    (The httpserver can import other modules implementing http routes,\n    and those modules can then use the utility functions without having\n    to import back httpserver)\n\n- Add a HTTP handler class and custom route decorator\n\n    These tools can be used to create independent groups of bottle\n    routes/callbacks in a OOP fashion\n\n- Extract http error codes and related logic to separated file\n\nChange-Id: Icd5fc9fa345852b8cf571e48f427dc10bdbd24c5\nSigned-off-by: Anderson Bravalheri \u003ca.bravalheri@bristol.ac.uk\u003e\n"
    },
    {
      "commit": "920210266c12f772ec1efe3d9494b0b6b10ac172",
      "tree": "85530e913274d558f80934b257813d073e031767",
      "parents": [
        "1f7d9d8e4e87be8c104fb93f133c2e68880a77c8"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Sep 12 16:29:23 2018 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Mon Oct 01 16:15:06 2018 +0200"
      },
      "message": "Change dockerfile-local to install osm-im, lib-osm-openvim and RO from source instead of making\n\nChange-Id: I03af69a2f798ed5b0645c2d3eac4ac48b15805a2\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "b8569aa8595fef5fadd0acc94d7949cf10b77a14",
      "tree": "e08039cc083091abf582cc0659786204d3d32928",
      "parents": [
        "e04c71531149b9e362a06cab4dd7554680559996"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Aug 24 11:34:54 2018 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Aug 24 11:39:41 2018 +0200"
      },
      "message": "Introduce deprecating methods\n\nChange-Id: Ic35d8596631cc6c30ea9e54a1144c6d6c08e6e79\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "7f426e900d00a76c3d583839f299982bbaf4c317",
      "tree": "a587f27ec25634bad2e288bc2408d68c59881982",
      "parents": [
        "cec213a7e459fa550beb5220b044d86b210d251f"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Thu Jun 28 15:21:32 2018 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Mon Jul 02 10:12:12 2018 +0200"
      },
      "message": "Enhance sdn-assist reporting\n\nChange-Id: I77d4600bc45f0eb64c849d38a4246df24c276707\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "2c290ca4088492a3c32bb6ab218d0004da68f6ea",
      "tree": "4c058ff7195b5ab2661429b8c5679fb28c08f063",
      "parents": [
        "06e6c396413630640cafae3488442a0869f1642d"
      ],
      "author": {
        "name": "garciadeblas",
        "email": "gerardo.garciadeblas@telefonica.com",
        "time": "Thu Apr 06 03:12:51 2017 +0200"
      },
      "committer": {
        "name": "garciadeblas",
        "email": "gerardo.garciadeblas@telefonica.com",
        "time": "Thu Apr 06 03:13:10 2017 +0200"
      },
      "message": "Restructuring code in osm_ro folder, and setup based on MANIFEST\nAlso updated Makefile and service-openmano.sh\n\nChange-Id: I60cf49013315efafd73de377452e38faf2f2f1e0\nSigned-off-by: garciadeblas \u003cgerardo.garciadeblas@telefonica.com\u003e\n"
    },
    {
      "commit": "6ecca189895532ec01cf302a43afa29492f6d207",
      "tree": "d0d1016f03d7027b76cc9ea4aa34c6035bdd891b",
      "parents": [
        "f70d0961a1266d6c4a0a4ce0aab18a5b9c8721ef"
      ],
      "author": {
        "name": "venkatamahesh",
        "email": "venkatamaheshkotha@gmail.com",
        "time": "Fri Jan 27 23:04:40 2017 +0530"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Mon Jan 30 17:30:25 2017 +0100"
      },
      "message": "Minor exception changes in files\n\nSigned-off-by: venkatamahesh \u003cvenkatamaheshkotha@gmail.com\u003e\n"
    },
    {
      "commit": "1b8c143f19b163b5899164cd43c73c6e02a29895",
      "tree": "34626ccfe8d932088fc738c7e784681ffb69f2b7",
      "parents": [
        "ae4a8d1771650d4016cb4e910b61670bb2478390"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Jul 08 13:21:01 2016 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Jul 08 13:21:01 2016 +0200"
      },
      "message": "change scenario examples to schema version 2\n\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "ae4a8d1771650d4016cb4e910b61670bb2478390",
      "tree": "6d468cf7cd7f6f392507e9c02dd6e9c67b32e3fa",
      "parents": [
        "5a24e462553736b2179bc87dc66d812c3a467151"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Jul 08 12:30:39 2016 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Fri Jul 08 12:30:39 2016 +0200"
      },
      "message": "openmano v0.4.39: logging at vimconnector. Exception generation upon error instead of returning status\n\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "66aa03745ce8fe86b2a2d555317ddf94f74e90fa",
      "tree": "858bb8439a3d3f9f7809871a62118820488d7612",
      "parents": [
        "dc485c4abc6f53778ed8f15547e5ea41ece48b34"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Jul 06 17:31:12 2016 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Jul 06 17:31:12 2016 +0200"
      },
      "message": "Fixed some references to utils\n\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "42fcc3be3eab33e0d934b8774a33629f07d47674",
      "tree": "59bc5db6f394c0abaef147c2d03d6c7aa03ce60a",
      "parents": [
        "c78233e1750d5d231e99ffedb5ba81014f84e6fe"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Jul 06 17:20:40 2016 +0200"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Wed Jul 06 17:20:40 2016 +0200"
      },
      "message": "Moved auxiliary_functions.py from utils package to the main package\n\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    },
    {
      "commit": "7edb675ac76f3e0473042cf5cf7de3c0f19eda7d",
      "tree": "1489529c178a3a2c2cec4133efe178c64b170491",
      "parents": [
        "679f266f2fe340c94b3dca3f2e6265727904dd0d"
      ],
      "author": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Mon Mar 21 17:37:52 2016 +0100"
      },
      "committer": {
        "name": "tierno",
        "email": "alfonso.tiernosepulveda@telefonica.com",
        "time": "Mon Mar 21 17:37:52 2016 +0100"
      },
      "message": "openmano first code upload\n\nSigned-off-by: tierno \u003calfonso.tiernosepulveda@telefonica.com\u003e\n"
    }
  ]
}
