A QueryContext is the environment that a Query is executed in, which
provides methods for communicating with the user through query results,
status bar and log messages, and errors.
Constructs a new exception with the specified cause and a detail
message of (cause==null ? null : cause.toString()) (which
typically contains the class and detail message of cause).