{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/12430","repository_url":"https://api.github.com/repos/apache/spark","labels_url":"https://api.github.com/repos/apache/spark/issues/12430/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/12430/comments","events_url":"https://api.github.com/repos/apache/spark/issues/12430/events","html_url":"https://github.com/apache/spark/pull/12430","id":148778449,"number":12430,"title":"[SPARK-14671][ML] Pipeline setStages should handle subclasses of PipelineStage","user":{"login":"jkbradley","id":5084283,"avatar_url":"https://avatars.githubusercontent.com/u/5084283?v=3","gravatar_id":"","url":"https://api.github.com/users/jkbradley","html_url":"https://github.com/jkbradley","followers_url":"https://api.github.com/users/jkbradley/followers","following_url":"https://api.github.com/users/jkbradley/following{/other_user}","gists_url":"https://api.github.com/users/jkbradley/gists{/gist_id}","starred_url":"https://api.github.com/users/jkbradley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkbradley/subscriptions","organizations_url":"https://api.github.com/users/jkbradley/orgs","repos_url":"https://api.github.com/users/jkbradley/repos","events_url":"https://api.github.com/users/jkbradley/events{/privacy}","received_events_url":"https://api.github.com/users/jkbradley/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-04-15T21:53:37Z","updated_at":"2016-04-27T20:42:36Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/12430","html_url":"https://github.com/apache/spark/pull/12430","diff_url":"https://github.com/apache/spark/pull/12430.diff","patch_url":"https://github.com/apache/spark/pull/12430.patch"},"body":"## What changes were proposed in this pull request?\r\n\r\nPipeline.setStages failed for some code examples which worked in 1.5 but fail in 1.6.  This tends to occur when using a mix of transformers from ml.feature. It is because Java Arrays are non-covariant and the addition of MLWritable to some transformers means the stages0/1 arrays above are not of type Array[PipelineStage].  This PR modifies the following to accept subclasses of PipelineStage:\r\n* Pipeline.setStages()\r\n* Params.w()\r\n\r\n## How was this patch tested?\r\n\r\nUnit test which fails to compile before this fix."},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/215221697","html_url":"https://github.com/apache/spark/pull/12430#issuecomment-215221697","issue_url":"https://api.github.com/repos/apache/spark/issues/12430","id":215221697,"user":{"login":"SparkQA","id":8108735,"avatar_url":"https://avatars.githubusercontent.com/u/8108735?v=3","gravatar_id":"","url":"https://api.github.com/users/SparkQA","html_url":"https://github.com/SparkQA","followers_url":"https://api.github.com/users/SparkQA/followers","following_url":"https://api.github.com/users/SparkQA/following{/other_user}","gists_url":"https://api.github.com/users/SparkQA/gists{/gist_id}","starred_url":"https://api.github.com/users/SparkQA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SparkQA/subscriptions","organizations_url":"https://api.github.com/users/SparkQA/orgs","repos_url":"https://api.github.com/users/SparkQA/repos","events_url":"https://api.github.com/users/SparkQA/events{/privacy}","received_events_url":"https://api.github.com/users/SparkQA/received_events","type":"User","site_admin":false},"created_at":"2016-04-27T20:42:36Z","updated_at":"2016-04-27T20:42:36Z","body":"**[Test build #57170 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/57170/consoleFull)** for PR 12430 at commit [`444d3f9`](https://github.com/apache/spark/commit/444d3f9bc550aaf9afaa9f20fea8d01cdf23a82b)."}}