)]}' { "commit": "37d5dbf8b6088a77f9a2ee9ae8ae4b2fdc5a9883", "tree": "bc6ae59f773b3ea6095b05149ea165893476d2ee", "parents": [ "6ac20982075c4cec74ddffc5f0e99ad2b8e6d4cf" ], "author": { "name": "Carmelo Cascone", "email": "carmelo@onlab.us", "time": "Mon Apr 18 15:15:48 2016 -0700" }, "committer": { "name": "Gerrit Code Review", "email": "gerrit@onlab.us", "time": "Wed May 04 17:21:32 2016 +0000" }, "message": "ONOS-4118 Added synchronization and resiliency to Bmv2ThriftClient\n\nDue to the multi-threaded nature of drivers, calls to a Bmv2ThriftClient\ncould result in a race condition if not properly synchronized. Also,\nonce open, transport session might close due to several reasons. Now the\nclient calls are synchronized and automatically wrapped in a try/catch\nthat tries to re-open the session for fixed number of times before\ngiving up.\n\nChange-Id: I5dcdd5a6304406dc6d9d3a0ccf7f16cdbf3b9573\n", "tree_diff": [ { "type": "modify", "old_id": "3c6acf52b7cfc3589a80b1e4dd7d1db43160f9d1", "old_mode": 33188, "old_path": "drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleDriver.java", "new_id": "2947b5f7921d09aadce8ee11ccd36c1466765871", "new_mode": 33188, "new_path": "drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2FlowRuleDriver.java" }, { "type": "modify", "old_id": "927b77d3e27e986bf46cdbfc1a89b56e813ae22e", "old_mode": 33188, "old_path": "drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2PortGetterDriver.java", "new_id": "e1da42bd29ab7af43ec7a6ecc536f96532777916", "new_mode": 33188, "new_path": "drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2PortGetterDriver.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "252f59bd18eb47274ca6ba3bcfe7e640a6afcea1", "new_mode": 33188, "new_path": "protocols/bmv2/src/main/java/org/onosproject/bmv2/api/runtime/Bmv2Client.java" }, { "type": "modify", "old_id": "eb6687ad0c25b4e43b5b2d2ee5104344a15432ed", "old_mode": 33188, "old_path": "protocols/bmv2/src/main/java/org/onosproject/bmv2/ctl/Bmv2ThriftClient.java", "new_id": "f1a86fcda0fbf83b1e1d9631d9345e6a482e3488", "new_mode": 33188, "new_path": "protocols/bmv2/src/main/java/org/onosproject/bmv2/ctl/Bmv2ThriftClient.java" }, { "type": "add", "old_id": "0000000000000000000000000000000000000000", "old_mode": 0, "old_path": "/dev/null", "new_id": "bbe0546a086b27115e7c5d7a092ad54fd3bc16ac", "new_mode": 33188, "new_path": "protocols/bmv2/src/main/java/org/onosproject/bmv2/ctl/SafeThriftClient.java" } ] }