{"push_id":707061308,"size":3,"distinct_size":3,"ref":"refs/heads/store-create-v2","head":"e2a63dff5a38a0f26f7f0c36356f3a6a28f4efeb","before":"308a81a8e9905145ac54b009db70008af3c3c5e0","commits":[{"sha":"7df8d3eb4c694d9047957b110a09807b79191742","author":{"email":"e7a2b38a6415c13ff38410cdcd7c2a3c7116105b@qq.com","name":"wulonghui"},"message":"Update error return in bridge driver's getNetwork","distinct":true,"url":"https://api.github.com/repos/spikecurtis/libnetwork/commits/7df8d3eb4c694d9047957b110a09807b79191742"},{"sha":"cc86aee6421805e03bedcf2557f0503a2193ba70","author":{"email":"045898bda7d4800fe4909a9831e702ab79e266be@docker.com","name":"Jana Radhakrishnan"},"message":"Merge pull request #328 from wulonghui/wulonghui-patch-3\n\nUpdate error return in bridge driver's getNetwork","distinct":true,"url":"https://api.github.com/repos/spikecurtis/libnetwork/commits/cc86aee6421805e03bedcf2557f0503a2193ba70"},{"sha":"e2a63dff5a38a0f26f7f0c36356f3a6a28f4efeb","author":{"email":"69a90d2b95e19e6a0b191756c2e89cec4ffb8961@metaswitch.com","name":"Spike Curtis"},"message":"Datastore handles creating objects atomically.\n\nIn that commit, AtomicPutCreate takes previous = nil to Atomically create keys\nthat don't exist.  We need a create operation that is atomic to prevent races\nbetween multiple libnetworks creating the same object.\n\nPreviously, we just created new KVs with an index of 0 and wrote them to the\ndatastore.  Consul accepts this behaviour and interprets index of 0 as\nnon-existing, but other data backends do no.\n\n - Add Exists() to the KV interface.  SetIndex() should also modify a KV so\n   that it exists.\n - Call SetIndex() from within the GetObject() method on DataStore interface.\n   - This ensures objects have the updated values for exists and index.\n - Add SetValue() to the KV interface.  This allows implementers to define\n   their own method to marshall and unmarshall (as bitseq and allocator have).\n - Update existing users of the DataStore (endpoint, network, bitseq,\n   allocator, ov_network) to new interfaces.\n - Fix UTs.","distinct":true,"url":"https://api.github.com/repos/spikecurtis/libnetwork/commits/e2a63dff5a38a0f26f7f0c36356f3a6a28f4efeb"}]}