metron-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nickwallen <...@git.apache.org>
Subject [GitHub] incubator-metron pull request #240: METRON-404 Stellar Compiler Hides Functi...
Date Fri, 02 Sep 2016 20:34:40 GMT
GitHub user nickwallen opened a pull request:

    https://github.com/apache/incubator-metron/pull/240

    METRON-404 Stellar Compiler Hides Function Initialization Errors

    The Stellar compiler is swallowing exceptions thrown during function initialization. The
compiler then reports that the function does not exist when in fact the function exists, but
initialization failed. The actual error during initialization is lost and not reported anywhere.
    
    For example, I have a function `PROFILE_GET` that is defined, but is set to fail on initialization.
 Prior to this change, an error would be reported that is misleading and hides the actual
failure during initialization.
    ```
    org.apache.metron.common.dsl.ParseException: Unable to find string function PROFILE_GET.
 Valid functions are IS_DATE,IS_DOMAIN,MONTH,...
    	at org.apache.metron.common.stellar.StellarCompiler.exitTransformationFunc(StellarCompiler.java:249)
    	at org.apache.metron.common.stellar.generated.StellarParser$TransformationFuncContext.exitRule(StellarParser.java:1616)
    
    ```
    
    After this change, the error looks like the following.
    ```
    org.apache.metron.common.dsl.ParseException: Unable to initialize function 'PROFILE_GET'
    
    	at org.apache.metron.common.stellar.StellarCompiler.initializeFunction(StellarCompiler.java:286)
    ...
    Caused by: java.lang.IllegalStateException: missing required context: PROFILER_HBASE_TABLE,
PROFILER_ROW_KEY_BUILDER, PROFILER_COLUMN_BUILDER
    	at org.apache.metron.profiler.client.stellar.GetProfile.validateContext(GetProfile.java:121)
    	at org.apache.metron.profiler.client.stellar.GetProfile.initialize(GetProfile.java:68)
    	at org.apache.metron.common.stellar.StellarCompiler.initializeFunction(StellarCompiler.java:282)
    	... 38 more
    ```
    
    This PR is dependent on #233 and METRON-396.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/nickwallen/incubator-metron METRON-404

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-metron/pull/240.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #240
    
----
commit 465d37e64861a57dc878f13e5c0685ab31ab3b73
Author: cstella <cestella@gmail.com>
Date:   2016-08-26T17:21:13Z

    METRON-396: Make Stellar function resolution happen via an annotation and classpath search

commit 5a68d841f41db7a399c6da8747ba29fe793d6039
Author: Nick Allen <nick@nickallen.org>
Date:   2016-09-02T20:17:30Z

    Merged METRON-396

commit 67f0a952debbd79fef2a3a02889e6e29329eb665
Author: Nick Allen <nick@nickallen.org>
Date:   2016-09-02T20:25:11Z

    METRON-404 Corrected formatting and whitespace issues.

commit 6ebb028873ca8e9fee379e116ba9e19fcd4d062b
Author: Nick Allen <nick@nickallen.org>
Date:   2016-09-02T20:27:03Z

    METRON-404 Stellar Compiler Hides Function Initialization Errors

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message