COOL!!!
On 5/30/18 2:55 PM, Dmitry Lychagin wrote:
All, The change that adds source locations has been merged. https://asterix-gerrit.ics.uci.edu/#/c/2659/ Source locations (org.apache.hyracks.api.exceptions.SourceLocation) are obtained from parser tokens (line and column) and propagated through compilation phases into the runtime. The following objects now carry source location information: 1) Language expressions: ILangExpression (expressions, clauses, statements) 2) Logical operators and expressions: ILogicalOperator, ILogicalExpression 3) Runtime operator and function descriptors: IOperatorDescriptor, IFunctionDescriptor, IPushRuntimeFactory 4) Runtime operator implementations and function evaluators Source locations are now reported in messages of exceptions raised at compile time and runtime. Going forward please try to maintain and propagate source locations when creating new expressions in the parser, during query rewrites, and runtime operator instantiation. When raising an error, check whether there is a source location available from an expression/operator/runtime evaluator and pass it to the exception constructor. Please let me know if you have any questions or comments. Thanks, -- Dmitry
