TheAfterWord не принимает параметры после { - PullRequest
1 голос
/ 13 мая 2019

Я пытаюсь запустить этот пример Spark в InteliJ. Однако компилятор жалуется на ключевое слово after:

TheAfterWord не принимает параметры после {

Сводка кода:

class SortMergeJoinSpec extends FlatSpec with Matchers {
  val sparkSession = SparkSession.builder().appName("Sort-merge join test")
.master("local[*]")
.config("spark.sql.join.preferSortMergeJoin", "true")
.config("spark.sql.autoBroadcastJoinThreshold", "1")
.config("spark.sql.defaultSizeInBytes", "100000")
.getOrCreate()

  after {
    sparkSession.stop()
  }

  "sort-merge join" should "be used when neither broadcast nor hash join are possible" in {
    ... bla bla bla
  }

  "for not sortable keys the sort merge join" should "not be used" in {
    ... bla bla bla
  }

  private def toAssertRowInterval(row: Row): String = {
    ... bla bla bla
  }

  private def toAssertRow(row: Row): String = {
    ... bla bla bla
  }
}

Полный код: Пример объединения сортировки-слияния

Возможно, проблема связана с определением класса. У них нет определения класса в примере, поэтому мне пришлось добавить его самостоятельно.

1 Ответ

2 голосов
/ 16 мая 2019

Как прокомментировал Сарвеш Кумар Сингх, я должен был объявить класс следующим образом:

class SortMergeJoinSpec extends FlatSpec with Matchers with BeforeAndAfter {
...