{"push_id":1173338355,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"467e8d8938cdf53c11e008af6dbafb99d083c909","before":"a0f37f93fd3b7463df3edbbce95fadeadc073db2","commits":[{"sha":"467e8d8938cdf53c11e008af6dbafb99d083c909","author":{"name":"George Chrysanthakopoulos","email":"085c675ee0d72d842a9fcf95c8389fa3b7f1c88b@vmware.com"},"message":"Preserve failure status code on replication failure\n\nWhen a replication request fails, it just returns 500. With this change,\nwe cache the failure code from the last failure reported by a peer. If peers\nreport different failure codes, we will report the most recent one before\nthe quorum was met or failure threshold exceeded.\n\nThis fixes a reported issue, where during synchronization (multiple nodes\nstarting), if a client sends a POST for a service that exists, instead of 409\nthe client sees 500.\n\nNote that the only way to reproduce this failure is to time the client request\nto happen DURING factory synchronization. I added a new test that does that,\nwhen serviceCount=1000 or above. Without the fix, the error code is 500, with the fix\nits 409!\n\nThis is a subtle issue, since xenon does the right thing even today: it prevents\nduplicate service post. But, it just did not return the right error code\n\nhttps://www.pivotaltracker.com/story/show/122158753\n\nChange-Id: I046a672682140046083e42135cb99c7805b67843","distinct":true,"url":"https://api.github.com/repos/vmware/xenon/commits/467e8d8938cdf53c11e008af6dbafb99d083c909"}]}
{"actor":{"display_login":"photon-gerrit"}}