{"push_id":658016866,"size":29,"distinct_size":13,"ref":"refs/heads/sparkr-df-api","head":"5e0716ad1e3828c81124325c1cb2dfea72faf030","before":"05211490e6e0dec3187131a465f251907cb77562","commits":[{"sha":"5784c8d95561dce432a85401e1510776fdf723a8","author":{"email":"8adc4758e0403b3bd961e4e414291eaa9ba64098@databricks.com","name":"Yin Huai"},"message":"[SPARK-1442] [SQL] [FOLLOW-UP] Address minor comments in Window Function PR (#5604).\n\nAddress marmbrus and scwf's comments in #5604.\n\nAuthor: Yin Huai <yhuai@databricks.com>\n\nCloses #5945 from yhuai/windowFollowup and squashes the following commits:\n\n0ef879d [Yin Huai] Add collectFirst to TreeNode.\n2373968 [Yin Huai] wip\n4a16df9 [Yin Huai] Address minor comments for [SPARK-1442].","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/5784c8d95561dce432a85401e1510776fdf723a8"},{"sha":"dec8f53719597119034dffbe43b2a9e5fd963083","author":{"email":"83490628a35ffaaa631d4777ee4c736ce71cbaf3@siberie.de","name":"ksonj"},"message":"[SPARK-7116] [SQL] [PYSPARK] Remove cache() causing memory leak\n\nThis patch simply removes a `cache()` on an intermediate RDD when evaluating Python UDFs.\n\nAuthor: ksonj <kson@siberie.de>\n\nCloses #5973 from ksonj/udf and squashes the following commits:\n\ndb5b564 [ksonj] removed TODO about cleaning up\nfe70c54 [ksonj] Remove cache() causing memory leak","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/dec8f53719597119034dffbe43b2a9e5fd963083"},{"sha":"074d75d4c8ce7c0296ded8f4c4868a9210320222","author":{"email":"50c4b4c4c26f83ee4bbc45a85db1c3c80b5aecdb@intel.com","name":"Cheng Hao"},"message":"[SPARK-5213] [SQL] Remove the duplicated SparkSQLParser\n\nThis is a follow up of #5827 to remove the additional `SparkSQLParser`\n\nAuthor: Cheng Hao <hao.cheng@intel.com>\n\nCloses #5965 from chenghao-intel/remove_sparksqlparser and squashes the following commits:\n\n509a233 [Cheng Hao] Remove the HiveQlQueryExecution\na5f9e3b [Cheng Hao] Remove the duplicated SparkSQLParser","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/074d75d4c8ce7c0296ded8f4c4868a9210320222"},{"sha":"0c33bf817cef457873007959f3539f93f907dccd","author":{"email":"dfaf75894ad3de5736b3eab77e7ff6b13128cd84@gmail.com","name":"Tijo Thomas"},"message":"[SPARK-7399] [SPARK CORE] Fixed compilation error in scala 2.11\n\nscala has deterministic naming-scheme for the generated methods which return default arguments . here one of the default argument of overloaded method has to be removed\n\nAuthor: Tijo Thomas <tijoparacka@gmail.com>\n\nCloses #5966 from tijoparacka/fix_compilation_error_in_scala2.11 and squashes the following commits:\n\nc90bba8 [Tijo Thomas] Fixed compilation error in scala 2.11","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/0c33bf817cef457873007959f3539f93f907dccd"},{"sha":"4eecf550aa7e4fb448baca82281bfd4e8bc4a778","author":{"email":"22a0dda5f6015b8ee84a30ff6553d35a91fe8732@gmail.com","name":"Timothy Chen"},"message":"[SPARK-7373] [MESOS] Add docker support for launching drivers in mesos cluster mode.\n\nUsing the existing docker support for mesos, also enabling the mesos cluster mode scheduler to launch Spark drivers in docker images as well.\n\nThis also allows the executors launched by the drivers to be also in the same Docker image by passing  the docker settings.\n\nAuthor: Timothy Chen <tnachen@gmail.com>\n\nCloses #5917 from tnachen/spark_cluster_docker and squashes the following commits:\n\n1e842f5 [Timothy Chen] Add docker support for launching drivers in mesos cluster mode.","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/4eecf550aa7e4fb448baca82281bfd4e8bc4a778"},{"sha":"f1216514b830eadcdfff6fca044afd6ae1585800","author":{"email":"02e0a999c50b1f88df7a8f5a04e1b76b35ea6a88@databricks.com","name":"Andrew Or"},"message":"[SPARK-7391] DAG visualization: auto expand if linked from another viz\n\nThis is an addition to #5729.\n\nIf you click into a stage from the DAG viz on the job page, you might expect to expand on the stage. However, once you get to the stage page, you actually have to expand the DAG viz there yourself.\n\nThis patch makes this happen automatically. It's a small UX improvement.\n\nAuthor: Andrew Or <andrew@databricks.com>\n\nCloses #5958 from andrewor14/viz-auto-expand and squashes the following commits:\n\n03cd157 [Andrew Or] Automatically expand DAG viz if from job page","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/f1216514b830eadcdfff6fca044afd6ae1585800"},{"sha":"88717ee4e7542ac8d5d2e5756c912dd390b37e88","author":{"email":"02e0a999c50b1f88df7a8f5a04e1b76b35ea6a88@databricks.com","name":"Andrew Or"},"message":"[SPARK-7347] DAG visualization: add tooltips to RDDs\n\nThis is an addition to #5729.\n\nHere's an example with ALS.\n<img src=\"https://issues.apache.org/jira/secure/attachment/12731039/tooltip.png\" width=\"400px\"></img>\n\nAuthor: Andrew Or <andrew@databricks.com>\n\nCloses #5957 from andrewor14/viz-hover2 and squashes the following commits:\n\n60e3758 [Andrew Or] Add tooltips for RDDs on job page","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/88717ee4e7542ac8d5d2e5756c912dd390b37e88"},{"sha":"347a329a36c94ff37363e4dffcbd5a24dc6a6714","author":{"email":"8757c4a255384de9fc2175f17a84f948e7081d30@gmail.com","name":"MechCoder"},"message":"[SPARK-7328] [MLLIB] [PYSPARK] Pyspark.mllib.linalg.Vectors: Missing items\n\nAdd\n1. Class methods squared_dist\n3. parse\n4. norm\n5. numNonzeros\n6. copy\n\nI made a few vectorizations wrt squared_dist and dot as well. I have added support for SparseMatrix serialization in a separate PR (https://github.com/apache/spark/pull/5775) and plan to complete support for Matrices in another PR.\n\nAuthor: MechCoder <manojkumarsivaraj334@gmail.com>\n\nCloses #5872 from MechCoder/local_linalg_api and squashes the following commits:\n\na8ff1e0 [MechCoder] minor\nce3e53e [MechCoder] Add error message for parser\n1bd3c04 [MechCoder] Robust parser and removed unnecessary methods\nf779561 [MechCoder] [SPARK-7328] Pyspark.mllib.linalg.Vectors: Missing items","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/347a329a36c94ff37363e4dffcbd5a24dc6a6714"},{"sha":"658a478d3f86456df09d0fbb1ba438fb36d8725c","author":{"email":"0e579b08a01ff18b1532d130b2dcd3e2b7ec8fb6@gmail.com","name":"Octavian Geagla"},"message":"[SPARK-5726] [MLLIB] Elementwise (Hadamard) Vector Product Transformer\n\nSee https://issues.apache.org/jira/browse/SPARK-5726\n\nAuthor: Octavian Geagla <ogeagla@gmail.com>\nAuthor: Joseph K. Bradley <joseph@databricks.com>\n\nCloses #4580 from ogeagla/spark-mllib-weighting and squashes the following commits:\n\nfac12ad [Octavian Geagla] [SPARK-5726] [MLLIB] Use new createTransformFunc.\n90f7e39 [Joseph K. Bradley] small cleanups\n4595165 [Octavian Geagla] [SPARK-5726] [MLLIB] Remove erroneous test case.\nded3ac6 [Octavian Geagla] [SPARK-5726] [MLLIB] Pass style checks.\n37d4705 [Octavian Geagla] [SPARK-5726] [MLLIB] Incorporated feedback.\n1dffeee [Octavian Geagla] [SPARK-5726] [MLLIB] Pass style checks.\ne436896 [Octavian Geagla] [SPARK-5726] [MLLIB] Remove 'TF' from 'ElementwiseProductTF'\ncb520e6 [Octavian Geagla] [SPARK-5726] [MLLIB] Rename HadamardProduct to ElementwiseProduct\n4922722 [Octavian Geagla] [SPARK-5726] [MLLIB] Hadamard Vector Product Transformer","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/658a478d3f86456df09d0fbb1ba438fb36d8725c"},{"sha":"e43803b8f477b2c8d28836ac163cb54328d13f1a","author":{"email":"9616cf314f60cbadfd3d5d51110130ad7923defb@databricks.com","name":"Xiangrui Meng"},"message":"[SPARK-6948] [MLLIB] compress vectors in VectorAssembler\n\nThe compression is based on storage. brkyvz\n\nAuthor: Xiangrui Meng <meng@databricks.com>\n\nCloses #5985 from mengxr/SPARK-6948 and squashes the following commits:\n\ndf56a00 [Xiangrui Meng] update python tests\n6d90d45 [Xiangrui Meng] compress vectors in VectorAssembler","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/e43803b8f477b2c8d28836ac163cb54328d13f1a"},{"sha":"97d1182af63d55abab44521171652c81c56c6af6","author":{"email":"f98b0bead8ca0151df080a83631a6c2556256922@huawei.com","name":"scwf"},"message":"[SQL] [MINOR] make star and multialias extend NamedExpression\n\n`Star` and `MultiAlias` just used in `analyzer` and them will be substituted after analyze,  So just like `Alias` they do not need extend `Attribute`\n\nAuthor: scwf <wangfei1@huawei.com>\n\nCloses #5928 from scwf/attribute and squashes the following commits:\n\n73a0560 [scwf] star and multialias do not need extend attribute","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/97d1182af63d55abab44521171652c81c56c6af6"},{"sha":"ea3077f19c18b5556a3632b36771aeb153746ff5","author":{"email":"d24118b4297e1ecf0c990d6935f5f9e6e4fd7701@gmail.com","name":"Liang-Chi Hsieh"},"message":"[SPARK-7277] [SQL] Throw exception if the property mapred.reduce.tasks is set to -1\n\nJIRA: https://issues.apache.org/jira/browse/SPARK-7277\n\nAs automatically determining the number of reducers is not supported (`mapred.reduce.tasks` is set to `-1`), we should throw exception to users.\n\nAuthor: Liang-Chi Hsieh <viirya@gmail.com>\n\nCloses #5811 from viirya/no_neg_reduce_tasks and squashes the following commits:\n\ne518f96 [Liang-Chi Hsieh] Consider other wrong setting values.\nfd9c817 [Liang-Chi Hsieh] Merge remote-tracking branch 'upstream/master' into no_neg_reduce_tasks\n4ede705 [Liang-Chi Hsieh] Throw exception instead of warning message.\n68a1c70 [Liang-Chi Hsieh] Show warning message if mapred.reduce.tasks is set to -1.","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/ea3077f19c18b5556a3632b36771aeb153746ff5"},{"sha":"937ba798c56770ec54276b9259e47ae65ee93967","author":{"email":"53fdba43521c8d2c2b4ff3a6f81e9f27ad86e7ac@gmail.com","name":"Iulian Dragos"},"message":"[SPARK-5281] [SQL] Registering table on RDD is giving MissingRequirementError\n\nGo through the context classloader when reflecting on user types in ScalaReflection.\n\nReplaced calls to `typeOf` with `typeTag[T].in(mirror)`. The convenience method assumes\nall types can be found in the classloader that loaded scala-reflect (the primordial\nclassloader). This assumption is not valid in all contexts (sbt console, Eclipse launchers).\n\nFixed SPARK-5281\n\nAuthor: Iulian Dragos <jaguarul@gmail.com>\n\nCloses #5981 from dragos/issue/mirrors-missing-requirement-error and squashes the following commits:\n\nd103e70 [Iulian Dragos] Go through the context classloader when reflecting on user types in ScalaReflection","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/937ba798c56770ec54276b9259e47ae65ee93967"},{"sha":"35f0173b8f67e2e506fc4575be6430cfb66e2238","author":{"email":"ab56adc4e61f1b489818a700493ea97fb9f9e75e@outlook.com","name":"Wenchen Fan"},"message":"[SPARK-2155] [SQL] [WHEN D THEN E] [ELSE F] add CaseKeyWhen for \"CASE a WHEN b THEN c * END\"\n\nAvoid translating to CaseWhen and evaluate the key expression many times.\n\nAuthor: Wenchen Fan <cloud0fan@outlook.com>\n\nCloses #5979 from cloud-fan/condition and squashes the following commits:\n\n3ce54e1 [Wenchen Fan] add CaseKeyWhen","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/35f0173b8f67e2e506fc4575be6430cfb66e2238"},{"sha":"88063c62689135da56ee6678b2e826b88c382732","author":{"email":"22f3e725b314afeca4d45e12683c560674029d21@gmail.com","name":"tedyu"},"message":"[SPARK-7450] Use UNSAFE.getLong() to speed up BitSetMethods#anySet()\n\nAuthor: tedyu <yuzhihong@gmail.com>\n\nCloses #5897 from tedyu/master and squashes the following commits:\n\n473bf9d [tedyu] Address Josh's review comments\n1719c5b [tedyu] Correct upper bound in for loop\nb51dcaf [tedyu] Add unit test in BitSetSuite for BitSet#anySet()\n83f9f87 [tedyu] Merge branch 'master' of github.com:apache/spark\n817e3f9 [tedyu] Replace constant 8 with SIZE_OF_LONG\n75a467b [tedyu] Correct offset for UNSAFE.getLong()\n855374b [tedyu] Remove second loop since bitSetWidthInBytes is WORD aligned\n093b7a4 [tedyu] Use UNSAFE.getLong() to speed up BitSetMethods#anySet()\n63ee050 [tedyu] Use UNSAFE.getLong() to speed up BitSetMethods#anySet()\n4ca0ef6 [tedyu] Use UNSAFE.getLong() to speed up BitSetMethods#anySet()\n3e9b6919 [tedyu] Use UNSAFE.getLong() to speed up BitSetMethods#anySet()","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/88063c62689135da56ee6678b2e826b88c382732"},{"sha":"22ab70e06ede65ca865073fe36c859042a920aa3","author":{"email":"5d14e010a5b345b784fd604efcc6cebb79f97468@gmail.com","name":"zsxwing"},"message":"[SPARK-7305] [STREAMING] [WEBUI] Make BatchPage show friendly information when jobs are dropped by SparkListener\n\nIf jobs are dropped by SparkListener, at least we can show the job ids in BatchPage. Screenshot:\n\n![b1](https://cloud.githubusercontent.com/assets/1000778/7434968/f19aa784-eff3-11e4-8f86-36a073873574.png)\n\nAuthor: zsxwing <zsxwing@gmail.com>\n\nCloses #5840 from zsxwing/SPARK-7305 and squashes the following commits:\n\naca0ba6 [zsxwing] Fix the code style\n718765e [zsxwing] Make generateNormalJobRow private\n8073b03 [zsxwing] Merge branch 'master' into SPARK-7305\n83dec11 [zsxwing] Make BatchPage show friendly information when jobs are dropped by SparkListener","distinct":false,"url":"https://api.github.com/repos/shivaram/spark-1/commits/22ab70e06ede65ca865073fe36c859042a920aa3"},{"sha":"cd1d4110cfffb413ab585cf1cc8f1264243cb393","author":{"email":"17b9e1c64588c7fa6419b4d29dc1f4426279ba01@databricks.com","name":"Michael Armbrust"},"message":"[SPARK-6908] [SQL] Use isolated Hive client\n\nThis PR switches Spark SQL's Hive support to use the isolated hive client interface introduced by #5851, instead of directly interacting with the client.  By using this isolated client we can now allow users to dynamically configure the version of Hive that they are connecting to by setting `spark.sql.hive.metastore.version` without the need recompile.  This also greatly reduces the surface area for our interaction with the hive libraries, hopefully making it easier to support other versions in the future.\n\nJars for the desired hive version can be configured using `spark.sql.hive.metastore.jars`, which accepts the following options:\n - a colon-separated list of jar files or directories for hive and hadoop.\n - `builtin` - attempt to discover the jars that were used to load Spark SQL and use those. This\n            option is only valid when using the execution version of Hive.\n - `maven` - download the correct version of hive on demand from maven.\n\nBy default, `builtin` is used for Hive 13.\n\nThis PR also removes the test step for building against Hive 12, as this will no longer be required to talk to Hive 12 metastores.  However, the full removal of the Shim is deferred until a later PR.\n\nRemaining TODOs:\n - Remove the Hive Shims and inline code for Hive 13.\n - Several HiveCompatibility tests are not yet passing.\n  - `nullformatCTAS` - As detailed below, we now are handling CTAS parsing ourselves instead of hacking into the Hive semantic analyzer.  However, we currently only handle the common cases and not things like CTAS where the null format is specified.\n  - `combine1` now leaks state about compression somehow, breaking all subsequent tests.  As such we currently add it to the blacklist\n  - `part_inherit_tbl_props` and `part_inherit_tbl_props_with_star` do not work anymore.  We are correctly propagating the information\n  - \"load_dyn_part14.*\" - These tests pass when run on their own, but fail when run with all other tests.  It seems our `RESET` mechanism may not be as robust as it used to be?\n\nOther required changes:\n -  `CreateTableAsSelect` no longer carries parts of the HiveQL AST with it through the query execution pipeline.  Instead, we parse CTAS during the HiveQL conversion and construct a `HiveTable`.  The full parsing here is not yet complete as detailed above in the remaining TODOs.  Since the operator is Hive specific, it is moved to the hive package.\n - `Command` is simplified to be a trait that simply acts as a marker for a LogicalPlan that should be eagerly evaluated.\n\nAuthor: Michael Armbrust <michael@databricks.com>\n\nCloses #5876 from marmbrus/useIsolatedClient and squashes the following commits:\n\n258d000 [Michael Armbrust] really really correct path handling\ne56fd4a [Michael Armbrust] getAbsolutePath\n5a259f5 [Michael Armbrust] fix typos\n81bb366 [Michael Armbrust] comments from vanzin\n5f3945e [Michael Armbrust] Merge remote-tracking branch 'origin/master' into useIsolatedClient\n4b5cd41 [Michael Armbrust] yin's comments\nf5de7de [Michael Armbrust] cleanup\n11e9c72 [Michael Armbrust] better coverage in versions suite\n7e8f010 [Michael Armbrust] better error messages and jar handling\ne7b3941 [Michael Armbrust] more permisive checking for function registration\nda91ba7 [Michael Armbrust] Merge remote-tracking branch 'origin/master' into useIsolatedClient\n5fe5894 [Michael Armbrust] fix serialization suite\n81711c4 [Michael Armbrust] Initial support for running without maven\n1d8ae44 [Michael Armbrust] fix final tests?\n1c50813 [Michael Armbrust] more comments\na3bee70 [Michael Armbrust] Merge remote-tracking branch 'origin/master' into useIsolatedClient\na6f5df1 [Michael Armbrust] style\nab07f7e [Michael Armbrust] WIP\n4d8bf02 [Michael Armbrust] Remove hive 12 compilation\n8843a25 [Michael Armbrust] [SPARK-6908] [SQL] Use isolated Hive client","distinct":true,"url":"https://api.github.com/repos/shivaram/spark-1/commits/cd1d4110cfffb413ab585cf1cc8f1264243cb393"},{"sha":"92f8f803a68e0c16771e9793098c6d76dfdf99af","author":{"email":"cb19cdbb6f51a6c425c3962c36b8b3c147eed722@gmail.com","name":"Shuo Xiang"},"message":"[SPARK-7452] [MLLIB] fix bug in topBykey and update test\n\nthe toArray function of the BoundedPriorityQueue does not necessarily preserve order. Add a counter-example as the test, which would fail the original impl.\n\nAuthor: Shuo Xiang <shuoxiangpub@gmail.com>\n\nCloses #5990 from coderxiang/topbykey-test and squashes the following commits:\n\n98804c9 [Shuo Xiang] fix bug in topBykey and update test","distinct":true,"url":"https://api.github.com/repos/shivaram/spark-1/commits/92f8f803a68e0c16771e9793098c6d76dfdf99af"},{"sha":"3af423c92f117b5dd4dc6832dc50911cedb29abc","author":{"email":"8adc4758e0403b3bd961e4e414291eaa9ba64098@databricks.com","name":"Yin Huai"},"message":"[SPARK-6986] [SQL] Use Serializer2 in more cases.\n\nWith https://github.com/apache/spark/commit/0a2b15ce43cf6096e1a7ae060b7c8a4010ce3b92, the serialization stream and deserialization stream has enough information to determine it is handling a key-value pari, a key, or a value. It is safe to use `SparkSqlSerializer2` in more cases.\n\nAuthor: Yin Huai <yhuai@databricks.com>\n\nCloses #5849 from yhuai/serializer2MoreCases and squashes the following commits:\n\n53a5eaa [Yin Huai] Josh's comments.\n487f540 [Yin Huai] Use BufferedOutputStream.\n8385f95 [Yin Huai] Always create a new row at the deserialization side to work with sort merge join.\nc7e2129 [Yin Huai] Update tests.\n4513d13 [Yin Huai] Use Serializer2 in more places.","distinct":true,"url":"https://api.github.com/repos/shivaram/spark-1/commits/3af423c92f117b5dd4dc6832dc50911cedb29abc"},{"sha":"714db2ef52c0fe34418e252e5a6f220337022046","author":{"email":"02e0a999c50b1f88df7a8f5a04e1b76b35ea6a88@databricks.com","name":"Andrew Or"},"message":"[SPARK-7470] [SQL] Spark shell SQLContext crashes without hive\n\nThis only happens if you have `SPARK_PREPEND_CLASSES` set. Then I built it with `build/sbt clean assembly compile` and just ran it with `bin/spark-shell`.\n```\n...\n15/05/07 17:07:30 INFO EventLoggingListener: Logging events to file:/tmp/spark-events/local-1431043649919\n15/05/07 17:07:30 INFO SparkILoop: Created spark context..\nSpark context available as sc.\njava.lang.NoClassDefFoundError: org/apache/hadoop/hive/conf/HiveConf\n\tat java.lang.Class.getDeclaredConstructors0(Native Method)\n\tat java.lang.Class.privateGetDeclaredConstructors(Class.java:2493)\n\tat java.lang.Class.getConstructor0(Class.java:2803)\n...\nCaused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.conf.HiveConf\n\tat java.net.URLClassLoader$1.run(URLClassLoader.java:366)\n\tat java.net.URLClassLoader$1.run(URLClassLoader.java:355)\n\tat java.security.AccessController.doPrivileged(Native Method)\n\tat java.net.URLClassLoader.findClass(URLClassLoader.java:354)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:425)\n\tat sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:358)\n\t... 52 more\n\n<console>:10: error: not found: value sqlContext\n       import sqlContext.implicits._\n              ^\n<console>:10: error: not found: value sqlContext\n       import sqlContext.sql\n              ^\n```\nyhuai marmbrus\n\nAuthor: Andrew Or <andrew@databricks.com>\n\nCloses #5997 from andrewor14/sql-shell-crash and squashes the following commits:\n\n61147e6 [Andrew Or] Also expect NoClassDefFoundError","distinct":true,"url":"https://api.github.com/repos/shivaram/spark-1/commits/714db2ef52c0fe34418e252e5a6f220337022046"}]}