datafu-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eyal Allweil (JIRA)" <>
Subject [jira] [Updated] (DATAFU-50) SimpleEvalFunc should extend ContextualEvalFunc, have good lifecycle hooks
Date Fri, 17 Nov 2017 20:24:00 GMT


Eyal Allweil updated DATAFU-50:
    Attachment: DATAFU-50-2.patch

Hi guys - [~mrflip], [~matterhayes] - what I suggest is merging this without the change in
implementation for AliasableEvalFunc. That will add the capabilities that were proposed in
this jira's description without needing to modify all the Bag UDF's to preserve their existing
behavior, which is what led to the test failures. 

This will also allow us to merge [DATAFU-47|].

I think I've managed to tweak the patch properly to do this - all tests pass now.

> SimpleEvalFunc should extend ContextualEvalFunc, have good lifecycle hooks
> --------------------------------------------------------------------------
>                 Key: DATAFU-50
>                 URL:
>             Project: DataFu
>          Issue Type: Improvement
>            Reporter: Philip (flip) Kromer
>            Assignee: Philip (flip) Kromer
>              Labels: Utils
>         Attachments: 0001-DATAFU-50-SimpleEvalFunc-should-extend-ContextualEva.patch,
> Being able to squirrel away values frozen at frontend-launch-time is very handy. 
> This does two things:
> * makes SimpleEvalFunc extend ContextualEvalFunc rather than plain-old-EvalFunc. This
seems harmless and gains you all that power of Contextualism.
> * Adds a hook method "void schemaReadyHook(inputSchema,outputSchema)" to ContextualEvalFunc,
called once the schemata are prepared. This acts as sugar for classes that want to set properties
at front-end time to be used at later points but which, like most SimpleEvalFunc's, want nothing
to do with schema calculation. In ContextualEvalFunc it does nothing; subclasses may override
it and if so must call super. schemaReadyHook().

This message was sent by Atlassian JIRA

View raw message