You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by "Lina Hovanessian (JIRA)" <ji...@apache.org> on 2015/09/14 09:57:46 UTC

[jira] [Comment Edited] (MAHOUT-1772) delimiterPattern instance variable of FileDataModel should be marked as a Transient field

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

Lina Hovanessian edited comment on MAHOUT-1772 at 9/14/15 7:57 AM:
-------------------------------------------------------------------

I sent the patch content as a comment. (First time doing this :-) ) Do I need to commit the change and create the pull request? 


was (Author: lina.hovanessian):
I sent the patch content as comment. (First time doing this :-) ) Do I need to commit the change and create the pull request? 

> 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)