{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/5744","labels_url":"https://api.github.com/repos/apache/spark/issues/5744/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/5744/comments","events_url":"https://api.github.com/repos/apache/spark/issues/5744/events","html_url":"https://github.com/apache/spark/pull/5744","id":71556528,"number":5744,"title":"[SPARK-7133][SQL] Implement struct, array, and map field accessor","user":{"login":"cloud-fan","id":3182036,"avatar_url":"https://avatars.githubusercontent.com/u/3182036?v=3","gravatar_id":"","url":"https://api.github.com/users/cloud-fan","html_url":"https://github.com/cloud-fan","followers_url":"https://api.github.com/users/cloud-fan/followers","following_url":"https://api.github.com/users/cloud-fan/following{/other_user}","gists_url":"https://api.github.com/users/cloud-fan/gists{/gist_id}","starred_url":"https://api.github.com/users/cloud-fan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cloud-fan/subscriptions","organizations_url":"https://api.github.com/users/cloud-fan/orgs","repos_url":"https://api.github.com/users/cloud-fan/repos","events_url":"https://api.github.com/users/cloud-fan/events{/privacy}","received_events_url":"https://api.github.com/users/cloud-fan/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":20,"created_at":"2015-04-28T11:04:17Z","updated_at":"2015-04-29T05:46:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/5744","html_url":"https://github.com/apache/spark/pull/5744","diff_url":"https://github.com/apache/spark/pull/5744.diff","patch_url":"https://github.com/apache/spark/pull/5744.patch"},"body":"It's the first step: generalize UnresolvedGetField to support all map, struct, and array\r\nTODO: add `apply` in Scala and `__getitem__` in Python, and unify the `getItem` and `getField` methods to one single API(or should we keep them for compatibility?).\r\n"},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/97313995","html_url":"https://github.com/apache/spark/pull/5744#issuecomment-97313995","issue_url":"https://api.github.com/repos/apache/spark/issues/5744","id":97313995,"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":"2015-04-29T05:46:35Z","updated_at":"2015-04-29T05:46:35Z","body":"  [Test build #31236 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/31236/consoleFull) for   PR 5744 at commit [`d72e47e`](https://github.com/apache/spark/commit/d72e47ef03f439ed285156ea5966d5db0b14cae1).\n * This patch **fails Spark unit tests**.\n * This patch merges cleanly.\n * This patch adds the following public classes _(experimental)_:\n  * `case class UnresolvedGetField(child: Expression, fieldExpr: Expression) extends UnaryExpression `\n  * `trait GetField extends UnaryExpression `\n  * `abstract class StructGetField extends GetField `\n  * `abstract class OrdinalGetField extends GetField `\n  * `case class SimpleStructGetField(child: Expression, field: StructField, ordinal: Int)`\n  * `case class ArrayStructGetField(`\n  * `case class ArrayOrdinalGetField(child: Expression, ordinal: Expression)`\n  * `case class MapOrdinalGetField(child: Expression, ordinal: Expression)`\n\n * This patch does not change any dependencies."}}