I've a whole new respect for ElasticSearch. It's codebase is so insanely complex, that I'm seriously contemplating tracing out the flow on a big ass chart. Any suggestions on how you people work and debug so many asynchronous flows?

I have been working on a bug, for almost 6 days (to be read as 3 consecutive weekends), and the best I've done is, conceptually isolate where it's happening. I'm an open source noob, but I feel I've learnt a whole lot during sifting through ES' codebase. :)

  • 4
    Unidirectional data flow and immutability. The only way to handle it and not blow yourself up all the time.
  • 1
    As above, but also by utilising all available tools.

    Not used ES, but have used webflux / reactor extensively. The tools that generate flow diagrams from stack traces are invaluable, as are spurious uses of .log() . Wouldn't be able to operate sanely without either of them.
Add Comment