When use prepareStatement parse and run RelNode error, the exception's error message is confusing.
In particular, if you prepare the statement using RelRunner.prepare(RelNode) and prepare fails, the exception should report the RelNode plan. Currently it tries to report the SQL, and for this kind of query, there is no SQL.
This code capture the exception,But Only the output of SQL exception is processed.So need to add the procedure to handle extra exception.
When we run RelNode or queryable show wrong,this exception can be:
"Error while preparing statement [null]"
can't log the real exception