How to determine if ExecuteGet exceeded my timeout?

So this is a bug in earlier versions of the SDK that have been resolved in 1.2.9, and I highly suggest you update to it ASAP.

That being said, typically when the message is empty and the StatusCode it means that a client error has occurred - this could because of a timeout with respect to resource contention (too many threads and too few available sockets). Almost always this causes a timeout, thus in that client version you can assume that you have timed out.

Note that starting with 1.2.9 client timeout errors are properly returned as 145 (or 0x091 in the Enyim.StatusCode enumeration).