Skip to content
Snippets Groups Projects
  1. Feb 26, 2016
    • thomastechs's avatar
      [SPARK-12941][SQL][MASTER] Spark-SQL JDBC Oracle dialect fails to map string... · 8afe4914
      thomastechs authored
      [SPARK-12941][SQL][MASTER] Spark-SQL JDBC Oracle dialect fails to map string datatypes to Oracle VARCHAR datatype
      
      ## What changes were proposed in this pull request?
      
      This Pull request is used for the fix SPARK-12941, creating a data type mapping to Oracle for the corresponding data type"Stringtype" from dataframe. This PR is for the master branch fix, where as another PR is already tested with the branch 1.4
      
      ## How was the this patch tested?
      
      (Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
      This patch was tested using the Oracle docker .Created a new integration suite for the same.The oracle.jdbc jar was to be downloaded from the maven repository.Since there was no jdbc jar available in the maven repository, the jar was downloaded from oracle site manually and installed in the local; thus tested. So, for SparkQA test case run, the ojdbc jar might be manually placed in the local maven repository(com/oracle/ojdbc6/11.2.0.2.0) while Spark QA test run.
      
      Author: thomastechs <thomas.sebastian@tcs.com>
      
      Closes #11306 from thomastechs/master.
      8afe4914
  2. Feb 25, 2016
    • Yanbo Liang's avatar
      [SPARK-13504] [SPARKR] Add approxQuantile for SparkR · 50e60e36
      Yanbo Liang authored
      ## What changes were proposed in this pull request?
      Add ```approxQuantile``` for SparkR.
      ## How was this patch tested?
      unit tests
      
      Author: Yanbo Liang <ybliang8@gmail.com>
      
      Closes #11383 from yanboliang/spark-13504 and squashes the following commits:
      
      4f17adb [Yanbo Liang] Add approxQuantile for SparkR
      50e60e36
    • Tommy YU's avatar
      [SPARK-13033] [ML] [PYSPARK] Add import/export for ml.regression · f3be369e
      Tommy YU authored
      Add export/import for all estimators and transformers(which have Scala implementation) under pyspark/ml/regression.py.
      
      yanboliang Please help to review.
      For doctest, I though it's enough to add one since it's common usage. But I can add to all if we want it.
      
      Author: Tommy YU <tummyyu@163.com>
      
      Closes #11000 from Wenpei/spark-13033-ml.regression-exprot-import and squashes the following commits:
      
      3646b36 [Tommy YU] address review comments
      9cddc98 [Tommy YU] change base on review and pr 11197
      cc61d9d [Tommy YU] remove default parameter set
      19535d4 [Tommy YU] add export/import to regression
      44a9dc2 [Tommy YU] add import/export for ml.regression
      f3be369e
    • Yuhao Yang's avatar
      [SPARK-13028] [ML] Add MaxAbsScaler to ML.feature as a transformer · 90d07154
      Yuhao Yang authored
      jira: https://issues.apache.org/jira/browse/SPARK-13028
      MaxAbsScaler works in a very similar way as MinMaxScaler, but scales in a way that the training data lies within the range [-1, 1] by dividing through the largest maximum value in each feature. The motivation to use this scaling includes robustness to very small standard deviations of features and preserving zero entries in sparse data.
      
      Unlike StandardScaler and MinMaxScaler, MaxAbsScaler does not shift/center the data, and thus does not destroy any sparsity.
      
      Something similar from sklearn:
      http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MaxAbsScaler.html#sklearn.preprocessing.MaxAbsScaler
      
      Author: Yuhao Yang <hhbyyh@gmail.com>
      
      Closes #10939 from hhbyyh/maxabs and squashes the following commits:
      
      fd8bdcd [Yuhao Yang] add tag and some optimization on fit
      648fced [Yuhao Yang] Merge remote-tracking branch 'upstream/master' into maxabs
      75bebc2 [Yuhao Yang] Merge remote-tracking branch 'upstream/master' into maxabs
      cb10bb6 [Yuhao Yang] remove minmax
      91ef8f3 [Yuhao Yang] ut added
      8ab0747 [Yuhao Yang] Merge remote-tracking branch 'upstream/master' into maxabs
      a9215b5 [Yuhao Yang] max abs scaler
      90d07154
    • Takeshi YAMAMURO's avatar
      [SPARK-13361][SQL] Add benchmark codes for Encoder#compress() in CompressionSchemeBenchmark · 1b39fafa
      Takeshi YAMAMURO authored
      This pr added benchmark codes for Encoder#compress().
      Also, it replaced the benchmark results with new ones because the output format of `Benchmark` changed.
      
      Author: Takeshi YAMAMURO <linguin.m.s@gmail.com>
      
      Closes #11236 from maropu/CompressionSpike.
      1b39fafa
    • Josh Rosen's avatar
      [SPARK-12757] Add block-level read/write locks to BlockManager · 633d63a4
      Josh Rosen authored
      ## Motivation
      
      As a pre-requisite to off-heap caching of blocks, we need a mechanism to prevent pages / blocks from being evicted while they are being read. With on-heap objects, evicting a block while it is being read merely leads to memory-accounting problems (because we assume that an evicted block is a candidate for garbage-collection, which will not be true during a read), but with off-heap memory this will lead to either data corruption or segmentation faults.
      
      ## Changes
      
      ### BlockInfoManager and reader/writer locks
      
      This patch adds block-level read/write locks to the BlockManager. It introduces a new `BlockInfoManager` component, which is contained within the `BlockManager`, holds the `BlockInfo` objects that the `BlockManager` uses for tracking block metadata, and exposes APIs for locking blocks in either shared read or exclusive write modes.
      
      `BlockManager`'s `get*()` and `put*()` methods now implicitly acquire the necessary locks. After a `get()` call successfully retrieves a block, that block is locked in a shared read mode. A `put()` call will block until it acquires an exclusive write lock. If the write succeeds, the write lock will be downgraded to a shared read lock before returning to the caller. This `put()` locking behavior allows us store a block and then immediately turn around and read it without having to worry about it having been evicted between the write and the read, which will allow us to significantly simplify `CacheManager` in the future (see #10748).
      
      See `BlockInfoManagerSuite`'s test cases for a more detailed specification of the locking semantics.
      
      ### Auto-release of locks at the end of tasks
      
      Our locking APIs support explicit release of locks (by calling `unlock()`), but it's not always possible to guarantee that locks will be released prior to the end of the task. One reason for this is our iterator interface: since our iterators don't support an explicit `close()` operator to signal that no more records will be consumed, operations like `take()` or `limit()` don't have a good means to release locks on their input iterators' blocks. Another example is broadcast variables, whose block locks can only be released at the end of the task.
      
      To address this, `BlockInfoManager` uses a pair of maps to track the set of locks acquired by each task. Lock acquisitions automatically record the current task attempt id by obtaining it from `TaskContext`. When a task finishes, code in `Executor` calls `BlockInfoManager.unlockAllLocksForTask(taskAttemptId)` to free locks.
      
      ### Locking and the MemoryStore
      
      In order to prevent in-memory blocks from being evicted while they are being read, the `MemoryStore`'s `evictBlocksToFreeSpace()` method acquires write locks on blocks which it is considering as candidates for eviction. These lock acquisitions are non-blocking, so a block which is being read will not be evicted. By holding write locks until the eviction is performed or skipped (in case evicting the blocks would not free enough memory), we avoid a race where a new reader starts to read a block after the block has been marked as an eviction candidate but before it has been removed.
      
      ### Locking and remote block transfer
      
      This patch makes small changes to to block transfer and network layer code so that locks acquired by the BlockTransferService are released as soon as block transfer messages are consumed and released by Netty. This builds on top of #11193, a bug fix related to freeing of network layer ManagedBuffers.
      
      ## FAQ
      
      - **Why not use Java's built-in [`ReadWriteLock`](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/ReadWriteLock.html)?**
      
        Our locks operate on a per-task rather than per-thread level. Under certain circumstances a task may consist of multiple threads, so using `ReadWriteLock` would mean that we might call `unlock()` from a thread which didn't hold the lock in question, an operation which has undefined semantics. If we could rely on Java 8 classes, we might be able to use [`StampedLock`](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/StampedLock.html) to work around this issue.
      
      - **Why not detect "leaked" locks in tests?**:
      
        See above notes about `take()` and `limit`.
      
      Author: Josh Rosen <joshrosen@databricks.com>
      
      Closes #10705 from JoshRosen/pin-pages.
      633d63a4
    • Timothy Chen's avatar
      [SPARK-13387][MESOS] Add support for SPARK_DAEMON_JAVA_OPTS with MesosClusterDispatcher. · 71299575
      Timothy Chen authored
      ## What changes were proposed in this pull request?
      
      Add support for SPARK_DAEMON_JAVA_OPTS with MesosClusterDispatcher.
      
      ## How was the this patch tested?
      
      Manual testing by launching dispatcher with SPARK_DAEMON_JAVA_OPTS
      
      Author: Timothy Chen <tnachen@gmail.com>
      
      Closes #11277 from tnachen/cluster_dispatcher_opts.
      71299575
    • Josh Rosen's avatar
      [SPARK-13501] Remove use of Guava Stopwatch · f2cfafdf
      Josh Rosen authored
      Our nightly doc snapshot builds are failing due to some issue involving the Guava Stopwatch constructor:
      
      ```
      [error] /home/jenkins/workspace/spark-master-docs/spark/core/src/main/scala/org/apache/spark/scheduler/cluster/mesos/CoarseMesosSchedulerBackend.scala:496: constructor Stopwatch in class Stopwatch cannot be accessed in class CoarseMesosSchedulerBackend
      [error]     val stopwatch = new Stopwatch()
      [error]                     ^
      ```
      
      This Stopwatch constructor was deprecated in newer versions of Guava (https://github.com/google/guava/commit/fd0cbc2c5c90e85fb22c8e86ea19630032090943) and it's possible that some classpath issues affecting Unidoc could be causing this to trigger compilation failures.
      
      In order to work around this issue, this patch removes this use of Stopwatch since we don't use it anywhere else in the Spark codebase.
      
      Author: Josh Rosen <joshrosen@databricks.com>
      
      Closes #11376 from JoshRosen/remove-stopwatch.
      f2cfafdf
    • hushan's avatar
      [SPARK-12009][YARN] Avoid to re-allocating yarn container while driver want to stop all Executors · 7a6ee8a8
      hushan authored
      Author: hushan <hushan@xiaomi.com>
      
      Closes #9992 from suyanNone/tricky.
      7a6ee8a8
    • Liwei Lin's avatar
      [SPARK-13468][WEB UI] Fix a corner case where the Stage UI page should show DAG but it doesn't show · dc6c5ea4
      Liwei Lin authored
      When uses clicks more than one time on any stage in the DAG graph on the *Job* web UI page, many new *Stage* web UI pages are opened, but only half of their DAG graphs are expanded.
      
      After this PR's fix, every newly opened *Stage* page's DAG graph is expanded.
      
      Before:
      ![](https://cloud.githubusercontent.com/assets/15843379/13279144/74808e86-db10-11e5-8514-cecf31af8908.png)
      
      After:
      ![](https://cloud.githubusercontent.com/assets/15843379/13279145/77ca5dec-db10-11e5-9457-8e1985461328.png)
      
      ## What changes were proposed in this pull request?
      
      - Removed the `expandDagViz` parameter for _Stage_ page and related codes
      - Added a `onclick` function setting `expandDagVizArrowKey(false)` as `true`
      
      ## How was this patch tested?
      
      Manual tests (with this fix) to verified this fix work:
      - clicked many times on _Job_ Page's DAG Graph → each newly opened Stage page's DAG graph is expanded
      
      Manual tests (with this fix) to verified this fix do not break features we already had:
      - refreshed many times for a same _Stage_ page (whose DAG already expanded) → DAG remained expanded upon every refresh
      - refreshed many times for a same _Stage_ page (whose DAG unexpanded) → DAG remained unexpanded upon every refresh
      - refreshed many times for a same _Job_ page (whose DAG already expanded) → DAG remained expanded upon every refresh
      - refreshed many times for a same _Job_ page (whose DAG unexpanded) → DAG remained unexpanded upon every refresh
      
      Author: Liwei Lin <proflin.me@gmail.com>
      
      Closes #11368 from proflin/SPARK-13468.
      dc6c5ea4
    • Yu ISHIKAWA's avatar
      [SPARK-13292] [ML] [PYTHON] QuantileDiscretizer should take random seed in PySpark · 35316cb0
      Yu ISHIKAWA authored
      ## What changes were proposed in this pull request?
      QuantileDiscretizer in Python should also specify a random seed.
      
      ## How was this patch tested?
      unit tests
      
      Author: Yu ISHIKAWA <yuu.ishikawa@gmail.com>
      
      Closes #11362 from yu-iskw/SPARK-13292 and squashes the following commits:
      
      02ffa76 [Yu ISHIKAWA] [SPARK-13292][ML][PYTHON] QuantileDiscretizer should take random seed in PySpark
      35316cb0
    • Yu ISHIKAWA's avatar
      [SPARK-12874][ML] ML StringIndexer does not protect itself from column name duplication · 14e2700d
      Yu ISHIKAWA authored
      ## What changes were proposed in this pull request?
      ML StringIndexer does not protect itself from column name duplication.
      
      We should still improve a way to validate a schema of `StringIndexer` and `StringIndexerModel`.  However, it would be great to fix at another issue.
      
      ## How was this patch tested?
      unit test
      
      Author: Yu ISHIKAWA <yuu.ishikawa@gmail.com>
      
      Closes #11370 from yu-iskw/SPARK-12874.
      14e2700d
    • Lin Zhao's avatar
      [SPARK-13069][STREAMING] Add "ask" style store() to ActorReciever · fb8bb047
      Lin Zhao authored
      Introduces a "ask" style ```store``` in ```ActorReceiver``` as a way to allow actor receiver blocked by back pressure or maxRate.
      
      Author: Lin Zhao <lin@exabeam.com>
      
      Closes #11176 from lin-zhao/SPARK-13069.
      fb8bb047
    • Davies Liu's avatar
      Revert "[SPARK-13457][SQL] Removes DataFrame RDD operations" · 751724b1
      Davies Liu authored
      This reverts commit 157fe64f.
      751724b1
    • Shixiong Zhu's avatar
      46f6e793
    • huangzhaowei's avatar
      [SPARK-12316] Wait a minutes to avoid cycle calling. · 5fcf4c2b
      huangzhaowei authored
      When application end, AM will clean the staging dir.
      But if the driver trigger to update the delegation token, it will can't find the right token file and then it will endless cycle call the method 'updateCredentialsIfRequired'.
      Then it lead driver StackOverflowError.
      https://issues.apache.org/jira/browse/SPARK-12316
      
      Author: huangzhaowei <carlmartinmax@gmail.com>
      
      Closes #10475 from SaintBacchus/SPARK-12316.
      5fcf4c2b
    • Cheng Lian's avatar
      [SPARK-13457][SQL] Removes DataFrame RDD operations · 157fe64f
      Cheng Lian authored
      ## What changes were proposed in this pull request?
      
      This PR removes DataFrame RDD operations. Original calls are now replaced by calls to methods of `DataFrame.rdd`.
      
      ## How was the this patch tested?
      
      No extra tests are added. Existing tests should do the work.
      
      Author: Cheng Lian <lian@databricks.com>
      
      Closes #11323 from liancheng/remove-df-rdd-ops.
      157fe64f
    • Yanbo Liang's avatar
      [SPARK-13490][ML] ML LinearRegression should cache standardization param value · 4460113d
      Yanbo Liang authored
      ## What changes were proposed in this pull request?
      Like #11027 for ```LogisticRegression```, ```LinearRegression``` with L1 regularization should also cache the value of the ```standardization``` rather than re-fetching it from the ```ParamMap``` for every OWLQN iteration.
      cc srowen
      
      ## How was this patch tested?
      No extra tests are added. It should pass all existing tests.
      
      Author: Yanbo Liang <ybliang8@gmail.com>
      
      Closes #11367 from yanboliang/spark-13490.
      4460113d
    • Michael Gummelt's avatar
      [SPARK-13439][MESOS] Document that spark.mesos.uris is comma-separated · c98a93de
      Michael Gummelt authored
      Author: Michael Gummelt <mgummelt@mesosphere.io>
      
      Closes #11311 from mgummelt/document_csv.
      c98a93de
    • Terence Yim's avatar
      [SPARK-13441][YARN] Fix NPE in yarn Client.createConfArchive method · fae88af1
      Terence Yim authored
      ## What changes were proposed in this pull request?
      
      Instead of using result of File.listFiles() directly, which may throw NPE, check for null first. If it is null, log a warning instead
      
      ## How was the this patch tested?
      
      Ran the ./dev/run-tests locally
      Tested manually on a cluster
      
      Author: Terence Yim <terence@cask.co>
      
      Closes #11337 from chtyim/fixes/SPARK-13441-null-check.
      fae88af1
    • Oliver Pierson's avatar
      [SPARK-13444][MLLIB] QuantileDiscretizer chooses bad splits on large DataFrames · 6f8e835c
      Oliver Pierson authored
      ## What changes were proposed in this pull request?
      
      Change line 113 of QuantileDiscretizer.scala to
      
      `val requiredSamples = math.max(numBins * numBins, 10000.0)`
      
      so that `requiredSamples` is a `Double`.  This will fix the division in line 114 which currently results in zero if `requiredSamples < dataset.count`
      
      ## How was the this patch tested?
      Manual tests.  I was having a problems using QuantileDiscretizer with my a dataset and after making this change QuantileDiscretizer behaves as expected.
      
      Author: Oliver Pierson <ocp@gatech.edu>
      Author: Oliver Pierson <opierson@umd.edu>
      
      Closes #11319 from oliverpierson/SPARK-13444.
      6f8e835c
    • Cheng Lian's avatar
      [SPARK-13473][SQL] Don't push predicate through project with nondeterministic field(s) · 3fa6491b
      Cheng Lian authored
      ## What changes were proposed in this pull request?
      
      Predicates shouldn't be pushed through project with nondeterministic field(s).
      
      See https://github.com/graphframes/graphframes/pull/23 and SPARK-13473 for more details.
      
      This PR targets master, branch-1.6, and branch-1.5.
      
      ## How was this patch tested?
      
      A test case is added in `FilterPushdownSuite`. It constructs a query plan where a filter is over a project with a nondeterministic field. Optimized query plan shouldn't change in this case.
      
      Author: Cheng Lian <lian@databricks.com>
      
      Closes #11348 from liancheng/spark-13473-no-ppd-through-nondeterministic-project-field.
      3fa6491b
    • Devaraj K's avatar
      [SPARK-13117][WEB UI] WebUI should use the local ip not 0.0.0.0 · 2e44031f
      Devaraj K authored
      Fixed the HTTP Server Host Name/IP issue i.e. HTTP Server to take the
      configured host name/IP and not '0.0.0.0' always.
      
      Author: Devaraj K <devaraj@apache.org>
      
      Closes #11133 from devaraj-kavali/SPARK-13117.
      2e44031f
    • Reynold Xin's avatar
      [SPARK-13486][SQL] Move SQLConf into an internal package · 2b2c8c33
      Reynold Xin authored
      ## What changes were proposed in this pull request?
      This patch moves SQLConf into org.apache.spark.sql.internal package to make it very explicit that it is internal. Soon I will also submit more API work that creates implementations of interfaces in this internal package.
      
      ## How was this patch tested?
      If it compiles, then the refactoring should work.
      
      Author: Reynold Xin <rxin@databricks.com>
      
      Closes #11363 from rxin/SPARK-13486.
      2b2c8c33
    • Davies Liu's avatar
      [SPARK-13376] [SPARK-13476] [SQL] improve column pruning · 07f92ef1
      Davies Liu authored
      ## What changes were proposed in this pull request?
      
      This PR mostly rewrite the ColumnPruning rule to support most of the SQL logical plans (except those for Dataset).
      
      This PR also fix a bug in Generate, it should always output UnsafeRow, added an regression test for that.
      
      ## How was this patch tested?
      
      This is test by unit tests, also manually test with TPCDS Q78, which could prune all unused columns successfully, improved the performance by 78% (from 22s to 12s).
      
      Author: Davies Liu <davies@databricks.com>
      
      Closes #11354 from davies/fix_column_pruning.
      07f92ef1
    • huangzhaowei's avatar
      [SPARK-13482][MINOR][CONFIGURATION] Make consistency of the configuraiton named in TransportConf. · 264533b5
      huangzhaowei authored
      `spark.storage.memoryMapThreshold` has two kind of the value, one is 2*1024*1024 as integer and the other one is '2m' as string.
      "2m" is recommanded in document but it will go wrong if the code goes into `TransportConf#memoryMapBytes`.
      
      [Jira](https://issues.apache.org/jira/browse/SPARK-13482)
      
      Author: huangzhaowei <carlmartinmax@gmail.com>
      
      Closes #11360 from SaintBacchus/SPARK-13482.
      264533b5
    • Kai Jiang's avatar
      [SPARK-7106][MLLIB][PYSPARK] Support model save/load in Python's FPGrowth · 4d2864b2
      Kai Jiang authored
      ## What changes were proposed in this pull request?
      
      Python API supports mode save/load in FPGrowth
      JIRA: [https://issues.apache.org/jira/browse/SPARK-7106](https://issues.apache.org/jira/browse/SPARK-7106)
      ## How was the this patch tested?
      
      The patch is tested with Python doctest.
      
      Author: Kai Jiang <jiangkai@gmail.com>
      
      Closes #11321 from vectorijk/spark-7106.
      4d2864b2
    • Joseph K. Bradley's avatar
      [SPARK-13479][SQL][PYTHON] Added Python API for approxQuantile · 13ce10e9
      Joseph K. Bradley authored
      ## What changes were proposed in this pull request?
      
      * Scala DataFrameStatFunctions: Added version of approxQuantile taking a List instead of an Array, for Python compatbility
      * Python DataFrame and DataFrameStatFunctions: Added approxQuantile
      
      ## How was this patch tested?
      
      * unit test in sql/tests.py
      
      Documentation was copied from the existing approxQuantile exactly.
      
      Author: Joseph K. Bradley <joseph@databricks.com>
      
      Closes #11356 from jkbradley/approx-quantile-python.
      13ce10e9
  3. Feb 24, 2016
    • Michael Armbrust's avatar
      [SPARK-13092][SQL] Add ExpressionSet for constraint tracking · 2b042577
      Michael Armbrust authored
      This PR adds a new abstraction called an `ExpressionSet` which attempts to canonicalize expressions to remove cosmetic differences.  Deterministic expressions that are in the set after canonicalization will always return the same answer given the same input (i.e. false positives should not be possible). However, it is possible that two canonical expressions that are not equal will in fact return the same answer given any input (i.e. false negatives are possible).
      
      ```scala
      val set = AttributeSet('a + 1 :: 1 + 'a :: Nil)
      
      set.iterator => Iterator('a + 1)
      set.contains('a + 1) => true
      set.contains(1 + 'a) => true
      set.contains('a + 2) => false
      ```
      
      Other relevant changes include:
       - Since this concept overlaps with the existing `semanticEquals` and `semanticHash`, those functions are also ported to this new infrastructure.
       - A memoized `canonicalized` version of the expression is added as a `lazy val` to `Expression` and is used by both `semanticEquals` and `ExpressionSet`.
       - A set of unit tests for `ExpressionSet` are added
       - Tests which expect `semanticEquals` to be less intelligent than it now is are updated.
      
      As a followup, we should consider auditing the places where we do `O(n)` `semanticEquals` operations and replace them with `ExpressionSet`.  We should also consider consolidating `AttributeSet` as a specialized factory for an `ExpressionSet.`
      
      Author: Michael Armbrust <michael@databricks.com>
      
      Closes #11338 from marmbrus/expressionSet.
      2b042577
    • Nong Li's avatar
      [SPARK-13250] [SQL] Update PhysicallRDD to convert to UnsafeRow if using the vectorized scanner. · 5a7af9e7
      Nong Li authored
      Some parts of the engine rely on UnsafeRow which the vectorized parquet scanner does not want
      to produce. This add a conversion in Physical RDD. In the case where codegen is used (and the
      scan is the start of the pipeline), there is no requirement to use UnsafeRow. This patch adds
      update PhysicallRDD to support codegen, which eliminates the need for the UnsafeRow conversion
      in all cases.
      
      The result of these changes for TPCDS-Q19 at the 10gb sf reduces the query time from 9.5 seconds
      to 6.5 seconds.
      
      Author: Nong Li <nong@databricks.com>
      
      Closes #11141 from nongli/spark-13250.
      5a7af9e7
    • Yin Huai's avatar
      [SPARK-13383][SQL] Fix test · cbb0b65a
      Yin Huai authored
      ## What changes were proposed in this pull request?
      
      Reverting SPARK-13376 (https://github.com/apache/spark/commit/d563c8fa01cfaebb5899ff7970115d0f2e64e8d5) affects the test added by SPARK-13383. So, I am fixing the test.
      
      Author: Yin Huai <yhuai@databricks.com>
      
      Closes #11355 from yhuai/SPARK-13383-fix-test.
      cbb0b65a
    • Yin Huai's avatar
      [SPARK-13475][TESTS][SQL] HiveCompatibilitySuite should still run in PR... · bc353805
      Yin Huai authored
      [SPARK-13475][TESTS][SQL] HiveCompatibilitySuite should still run in PR builder even if a PR only changes sql/core
      
      ## What changes were proposed in this pull request?
      
      `HiveCompatibilitySuite` should still run in PR build even if a PR only changes sql/core. So, I am going to remove `ExtendedHiveTest` annotation from `HiveCompatibilitySuite`.
      
      https://issues.apache.org/jira/browse/SPARK-13475
      
      Author: Yin Huai <yhuai@databricks.com>
      
      Closes #11351 from yhuai/SPARK-13475.
      bc353805
    • gatorsmile's avatar
      [HOT][TEST] Disable a Test that Requires Nested Union Support. · 5289837a
      gatorsmile authored
      ## What changes were proposed in this pull request?
      Since "[SPARK-13321][SQL] Support nested UNION in parser" is reverted, we need to disable the test case that requires this PR. Thanks!
      
      rxin yhuai marmbrus
      
      ## How was this patch tested?
      
      N/A
      
      Author: gatorsmile <gatorsmile@gmail.com>
      
      Closes #11352 from gatorsmile/disableTestCase.
      5289837a
    • Wenchen Fan's avatar
      [SPARK-13467] [PYSPARK] abstract python function to simplify pyspark code · a60f9128
      Wenchen Fan authored
      ## What changes were proposed in this pull request?
      
      When we pass a Python function to JVM side, we also need to send its context, e.g. `envVars`, `pythonIncludes`, `pythonExec`, etc. However, it's annoying to pass around so many parameters at many places. This PR abstract python function along with its context, to simplify some pyspark code and make the logic more clear.
      
      ## How was the this patch tested?
      
      by existing unit tests.
      
      Author: Wenchen Fan <wenchen@databricks.com>
      
      Closes #11342 from cloud-fan/python-clean.
      a60f9128
    • Reynold Xin's avatar
      Revert "[SPARK-13321][SQL] Support nested UNION in parser" · f92f53fa
      Reynold Xin authored
      This reverts commit 55d6fdf2.
      f92f53fa
    • Reynold Xin's avatar
      65805ab6
    • Reynold Xin's avatar
      Revert "[SPARK-13376] [SQL] improve column pruning" · d563c8fa
      Reynold Xin authored
      This reverts commit e9533b41.
      d563c8fa
    • Reynold Xin's avatar
      Revert "[SPARK-13383][SQL] Keep broadcast hint after column pruning" · 382b27ba
      Reynold Xin authored
      This reverts commit f3739869.
      382b27ba
    • Liang-Chi Hsieh's avatar
      [SPARK-13383][SQL] Keep broadcast hint after column pruning · f3739869
      Liang-Chi Hsieh authored
      JIRA: https://issues.apache.org/jira/browse/SPARK-13383
      
      ## What changes were proposed in this pull request?
      
      When we do column pruning in Optimizer, we put additional Project on top of a logical plan. However, when we already wrap a BroadcastHint on a logical plan, the added Project will hide BroadcastHint after later execution.
      
      We should take care of BroadcastHint when we do column pruning.
      
      ## How was the this patch tested?
      
      Unit test is added.
      
      Author: Liang-Chi Hsieh <viirya@gmail.com>
      
      Closes #11260 from viirya/keep-broadcasthint.
      f3739869
    • Liang-Chi Hsieh's avatar
      [SPARK-13472] [SPARKR] Fix unstable Kmeans test in R · 89301818
      Liang-Chi Hsieh authored
      JIRA: https://issues.apache.org/jira/browse/SPARK-13472
      
      ## What changes were proposed in this pull request?
      
      One Kmeans test in R is unstable and sometimes fails. We should fix it.
      
      ## How was this patch tested?
      
      Unit test is modified in this PR.
      
      Author: Liang-Chi Hsieh <viirya@gmail.com>
      
      Closes #11345 from viirya/fix-kmeans-r-test and squashes the following commits:
      
      f959f61 [Liang-Chi Hsieh] Sort resulted clusters.
      89301818
Loading