GitHub user takuti opened a pull request:

    https://github.com/apache/incubator-hivemall/pull/145

    [HIVEMALL-191] Add Kryo serialization test to existing workaround code

    ## What changes were proposed in this pull request?
    
    Add Kryo serialization test to existing workaround code as: 
https://github.com/apache/incubator-hivemall/commit/f6765dff7be67e1a3327709bbb9bfdc6eba7b97f
    
    To be more precise, currently two UDFs `quantified_features` and 
`tokenize_ja` explicitly have the workaround lazy instantiation code. So, this 
PR makes their `transient` keyword unnecessary.
    
    ## What type of PR is it?
    
    Improvement
    
    ## What is the Jira issue?
    
    https://issues.apache.org/jira/browse/HIVEMALL-191
    
    ## How was this patch tested?
    
    Added some unit tests, and manually tested as well
    
    ## Checklist
    
    - [x] Did you apply source code formatter, i.e., `mvn formatter:format`, 
for your commit?
    - [x] Did you run system tests on Hive (or Spark)?


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

    $ git pull https://github.com/takuti/incubator-hivemall HIVEMALL-191

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

    https://github.com/apache/incubator-hivemall/pull/145.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 #145
    
----
commit 554cd46a84875836733fd55aae0c67746f7aa9dc
Author: Takuya Kitazawa <k.takuti@...>
Date:   2018-04-16T03:57:02Z

    Refactor and add test to QuantifiedFeaturesUDTF
    
    Test case checks Kryo serialization as well.

commit bb6d5cb4d98dd1cc57e2bb6afe8f74b2ff4002ee
Author: Takuya Kitazawa <k.takuti@...>
Date:   2018-04-16T05:12:40Z

    Add TestUtils to NLP module

commit fc676513c5cec08013d723d4ea5e2003506cb8b6
Author: Takuya Kitazawa <k.takuti@...>
Date:   2018-04-16T05:13:08Z

    Update Kuromoji analyzer initialization logic for Kryo serialization
    
    `initialize()` creates Java standard objects, and UDF stores them as
    instance variables. Kuromoji-specific externally-defined objects (e.g.,
    CharArraySet) will be created in `evaluate()` at the time of
    initializing Kuromoji analyzer.
    
    This modification prevents unexpectable KryoException caused by
    instantiation of Kuromoji-specific objects.

commit f2ca8ee83c58d0b86a8f479b3432528e4c79486a
Author: Takuya Kitazawa <k.takuti@...>
Date:   2018-04-16T05:22:00Z

    Make argument of SmartcnUDF.stopWords nullable

commit 6f9193cfa8c29523a127a12441fe00a9b1d87906
Author: Takuya Kitazawa <k.takuti@...>
Date:   2018-04-16T05:22:24Z

    Add serialization test to SmartcnUDFTest

----


---

Reply via email to