At line 145 of ElasticClient.cs the current code looks like :
if (mr != null)
throw mr;
var ae = r.Exception.Flatten();
if (ae.InnerException != null)
throw ae.InnerException;
throw ae;
Re-throwing exceptions without wrapping them with throw ex; mean that their callstack is completely erased (more details), the code should wrap the exceptions in a new exception and throw that instead.
Note: I remarked the issue as it happens on a production system and made our investigations of the problem harder than necessary