[ 
https://issues.apache.org/jira/browse/MAHOUT-1772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14965487#comment-14965487
 ] 

ASF GitHub Bot commented on MAHOUT-1772:
----------------------------------------

Github user dlyubimov commented on the pull request:

    https://github.com/apache/mahout/pull/160#issuecomment-149651058
  
    Do we accept taste patches?
    
    It would be great if Sean Owen provided a feedback on this.
    On Oct 12, 2015 4:30 AM, "linahovanessian" <[email protected]> wrote:
    
    > Sorry for 3 continues check-ins ! I had a problem with my SSH.
    > The valid change is the latest one , where I set the variable to 
transient.
    >
    > private final transient Splitter delimiterPattern;
    > ------------------------------
    > You can view, comment on, or merge this pull request online at:
    >
    >   https://github.com/apache/mahout/pull/160
    > Commit Summary
    >
    >    - https://issues.apache.org/jira/browse/MAHOUT-1772
    >    - https://issues.apache.org/jira/browse/MAHOUT-1772
    >    - https://issues.apache.org/jira/browse/MAHOUT-1772
    >
    > File Changes
    >
    >    - *M*
    >    
mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
    >    <https://github.com/apache/mahout/pull/160/files#diff-0> (2)
    >
    > Patch Links:
    >
    >    - https://github.com/apache/mahout/pull/160.patch
    >    - https://github.com/apache/mahout/pull/160.diff
    >
    > —
    > Reply to this email directly or view it on GitHub
    > <https://github.com/apache/mahout/pull/160>.
    >



> delimiterPattern instance variable of FileDataModel should be marked as a 
> Transient field
> -----------------------------------------------------------------------------------------
>
>                 Key: MAHOUT-1772
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-1772
>             Project: Mahout
>          Issue Type: Bug
>          Components: Collaborative Filtering
>    Affects Versions: 0.11.0
>            Reporter: Lina Hovanessian
>              Labels: easyfix, easytest
>
> I am trying to implement a recommender using Mahout. To create the DataModel 
> I am using FileDataModel type. After creating the Recommender object , I want 
> to save the model for later usage , just like what we have in Spark models.
> FileDataModel is implementing and inheriting Serializable classes , so this 
> means that it can be Serialized. However  when I try to write it the 
> "java.io.NotSerializableException: com.google.common.base.Splitter" exception 
> is thrown.
> The root cause of this exception is "private final Splitter 
> delimiterPattern;" variable of FileDataModel class. It is a non-serializable 
> third party class which is not marked as a transient field in the 
> FileDataModel class, as a result of this we get the exception mentioned above.
> As a workaround , I created my own "MyFileDataModel" which is an exact copy 
> of "FileDataModel" class but the "delimiterPattern" variable is marked as 
> transient and it works perfectly. It would be better to mark the field as 
> transient in the original class.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to