~/talk

Error Handling and Pitfalls in Distributed Go Apps

Talkat GopherCon Europe 2020 · 2020-06-15..06-18· [distributed-systems]
slides:none on file

CockroachDB records a surge of bugs in 2018–2019 traced to Go error idioms: local pointer equality breaks when errors cross processes, causing wrong retry decisions (example: client data crafting an error string that triggers infinite retries). Solution is a drop‑in errors library that serializes errors via protobuf encode/decode, preserves stack traces, and computes identity markers from wrapped types and messages so errors.Is across network works. Library adds a decoder registry for concrete types, integrates with gRPC, and is deployed in CockroachDB.

AI-written summary · about

  1. 0:00Introduction
  2. 2:23Error Visions
  3. 6:31Errors in Practice
  4. 10:30Generalizing the Problem
  5. 11:15Standard Libraries
  6. 12:18Problems
  7. 12:58Linked Lists
  8. 14:53Equivalence
  9. 15:31Encodings
  10. 15:55Identity Markers
  11. 17:05Overriding Identity Markers
  12. 17:50Error S
  13. 18:53Embedded Stack Trace
  14. 19:56Error Value Proposal
  15. 20:43Summary
  16. 22:10Questions
  17. 26:22Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.