{"push_id":1276871388,"size":7,"distinct_size":7,"ref":"refs/heads/cherrypick-log","head":"9cea24491bddbdef488a98a79ba0a4a948d148eb","before":"8be6d4b60fdf467cd09c9a7b49a9b221dd4fbc0f","commits":[{"sha":"555ca4c236a0fa8e911072c6a7318b14de1127ff","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"storage: fixing queue Close() races\n\nThe baseQueue has a Close() function that finishes the EventLog. Unfortunately\nthis function is not synchronized with anything else that may be happening, and\nthis leads to races when using the log. We also have races between Add() and\nClose() which forces some Add() calls to be enclosed in a RunTask.\n\nWe resolve both issues by removing the Close() function, closing the trace log\nat the end of the main queue loop, and using the trace log only under the mutex,\nafter we have checked that we haven't stopped.\n\nFixes #8601.","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/555ca4c236a0fa8e911072c6a7318b14de1127ff"},{"sha":"730335fef1302c2be97e0ae22534cc6bb0337ccf","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"storage: remove unnecessary RunTask\n\nNow that we no longer have a race with stopping the queues, we can remove the\nRunTask hack that was used to avoid it.\n\nFixes #8561.","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/730335fef1302c2be97e0ae22534cc6bb0337ccf"},{"sha":"4909f10af74899aa0e262a0426a406556d53b369","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"storage: replace queueLog with EventLog in context\n\nReplacing the queueLog with new infrastructure that allows us to embed an\nEventLog in the context and use regular logs and events.","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/4909f10af74899aa0e262a0426a406556d53b369"},{"sha":"9a141defbdf83f483554875ebb44e268b62f9b64","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"gossip: plumb contexts\n\nPlumbing contexts through gossip. Attaching an EventLog to the context for all\ngossip logs, removing the eventLog.\n\nPart of #7995.\n\nConflicts:\n\tgossip/client.go\n\tgossip/client_test.go\n\tgossip/gossip.go\n\tkv/dist_sender_test.go","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/9a141defbdf83f483554875ebb44e268b62f9b64"},{"sha":"93361a6e8fdf4d728e927d966c33c4116a454308","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"log: fix tags in traces\n\nThe existing tracing code has a problem with log tags: when we trace through a\nlogging function like `Infof`, the tags show up in the events. When we trace\nthrough an `Event` function, they do not.\n\nReworking the tracing code to provide a common function to log events, and\nfixing this issue by always including log tags. We also fix `VEvent` functions\nwhich were calling `Info/Infof` directly which would result in an incorrect\ncaller identification.\n\nLonger term, we may want to be smarter: the tags that are part of the ancestor\ncontext where the Span of EventLog was started should be included in the name of\nthe Span/EventLog (or set as span tags), and only the tags that were added to\nthe context later should appear in event messages. This is too complicated for\nthe amount of tags we currently have but we may revisit this in the future as\ntag usage expands.\n\nConflicts:\n\tutil/log/structured.go","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/93361a6e8fdf4d728e927d966c33c4116a454308"},{"sha":"5f93f6688a202ea5f2e40d87fb289ff7ed60a99b","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"log: allow Finishing an EventLog concurrently with events\n\nThe logging code now \"owns\" the EventLog and synchronizes access to it. We now\nallow logging calls concurrent with finishing the eventlog.\n\nVerified using\n```\nmake stressrace PKG=./gossip TESTS=TestClientGossip TESTFLAGS='--verbosity 2'\n```\n\nFixes #8905.\n\nConflicts:\n\tstorage/queue.go","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/5f93f6688a202ea5f2e40d87fb289ff7ed60a99b"},{"sha":"9cea24491bddbdef488a98a79ba0a4a948d148eb","author":{"name":"Radu Berinde","email":"ea8e73412c2808db667796f35f8c95b16e969d70@gmail.com"},"message":"storage: clean up queue.ctx usage\n\nThe only reason `ctx` was protected by the mutex was because of the embedded\nEventLog. Now that we internally synchronize access to it, we no longer need\nthis complication; moving `ctx` out of `mu`.\n\nConflicts:\n\tstorage/queue.go","distinct":true,"url":"https://api.github.com/repos/RaduBerinde/cockroach/commits/9cea24491bddbdef488a98a79ba0a4a948d148eb"}]}
{"actor":{"display_login":"RaduBerinde"}}