GitHub user wangmiao1981 opened a pull request:

    https://github.com/apache/spark/pull/13110

    [SPARK-15318][ML][Example]:spark.ml Collaborative Filtering example does 
not work in spark-shell

    ## What changes were proposed in this pull request?
    
    (Please fill in changes proposed in this fix)
    
    copy & paste example in ml-collaborative-filtering.html into spark-shell, 
we see the following errors.
    scala> case class Rating(userId: Int, movieId: Int, rating: Float, 
timestamp: Long)
    defined class Rating
    
    scala> object Rating {
    def parseRating(str: String): Rating = { | val fields = str.split("::") | 
assert(fields.size == 4) | Rating(fields(0).toInt, fields(1).toInt, 
fields(2).toFloat, fields(3).toLong) | }
    }
    <console>:29: error: Rating.type does not take parameters
    Rating(fields(0).toInt, fields(1).toInt, fields(2).toFloat, 
fields(3).toLong)
    ^
    In standard scala repl, it has the same error.
    
    Scala/spark-shell repl has some quirks (e.g. packages are also not well 
supported).
    
    The reason of errors is that scala/spark-shell repl discards previous 
definitions when we define the Object with the same class name. Solution: We 
can rename the Object Rating.
    
    ## How was this patch tested?
    
    (Please explain how this patch was tested. E.g. unit tests, integration 
tests, manual tests)
    
    Manually test it: 1). ./bin/run-example ALSExample
    2). copy & paste example in the generated document. It works fine.


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

    $ git pull https://github.com/wangmiao1981/spark repl

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

    https://github.com/apache/spark/pull/13110.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 #13110
    
----
commit cb20cb255b3bd3db6d469952619656c0a9f4bcb9
Author: wm...@hotmail.com <wm...@hotmail.com>
Date:   2016-05-13T23:12:44Z

    rename the Rating

----


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to