We're updating the issue view to help you get more done. 

Add more logging to discover intermittent RSparkling Issue in jenkins tests

Description

Probably just need higher some specific SparklyR timeouts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 10:59:59 > library(testthat) 10:59:59 > library(dplyr) 10:59:59 10:59:59 Attaching package: ‘dplyr’ 10:59:59 10:59:59 The following object is masked from ‘package:testthat’: 10:59:59 10:59:59 matches 10:59:59 10:59:59 The following objects are masked from ‘package:stats’: 10:59:59 10:59:59 filter, lag 10:59:59 10:59:59 The following objects are masked from ‘package:base’: 10:59:59 > library(sparklyr) 10:59:59 10:59:59 intersect, setdiff, setequal, union 10:59:59 10:59:59 > library(h2o) 10:59:59 10:59:59 ---------------------------------------------------------------------- 10:59:59 10:59:59 Your next step is to start H2O: 10:59:59 > h2o.init() 10:59:59 10:59:59 For H2O package documentation, ask for help: 10:59:59 > ??h2o 10:59:59 10:59:59 After starting H2O, you can use the Web UI at http://localhost:54321 10:59:59 For more information visit http://docs.h2o.ai 10:59:59 10:59:59 ---------------------------------------------------------------------- 10:59:59 10:59:59 10:59:59 Attaching package: ‘h2o’ 10:59:59 10:59:59 The following objects are masked from ‘package:stats’: 10:59:59 10:59:59 cor, sd, var 10:59:59 10:59:59 The following objects are masked from ‘package:base’: 10:59:59 > library(rsparkling) 10:59:59 10:59:59 %*%, %in%, &&, apply, as.factor, as.numeric, colnames, colnames<-, 10:59:59 ifelse, is.character, is.factor, is.numeric, log, log10, log1p, 10:59:59 log2, round, signif, trunc, || 10:59:59 10:59:59 > 10:59:59 > if (identical(Sys.getenv("NOT_CRAN"), "true")) { # testthat::skip_on_cran 10:59:59 + # Set Sparkling Water Water Jar location and version for tests 10:59:59 + options(rsparkling.sparklingwater.location = Sys.getenv("sparkling.assembly.jar")) 10:59:59 + options(rsparkling.sparklingwater.version = Sys.getenv("sparkling.water.version")) 10:59:59 + # Set Spark version for tests 10:59:59 + options(rsparkling.spark.version = Sys.getenv("spark.version")) 10:59:59 + test_check("rsparkling") 10:59:59 + } else { 10:59:59 + cat("Skipping Tests\n") 10:59:59 + } 11:00:01 ── 1. Error: Test transformation from h2o frame to data frame (@test_transforms. 11:00:01 Failed while connecting to sparklyr to port (8880) for sessionid (67331): ignoring SIGPIPE signal 11:00:01 Path: /home2/jenkins/slave_dir_from_mr-0xc1/workspace/ne_internal_nightly_rel-2.1-AJ6HUL6TB33AKFE3MTI673WEZHGFPSY4PRUARHOD6GTP4HPUGLIA/spark/bin/spark-submit 11:00:01 Parameters: --class, sparklyr.Shell, --jars, '/home2/jenkins/slave_dir_from_mr-0xc1/workspace/ne_internal_nightly_rel-2.1-AJ6HUL6TB33AKFE3MTI673WEZHGFPSY4PRUARHOD6GTP4HPUGLIA/assembly/build/libs/sparkling-water-assembly_2.11-2.1.49-SNAPSHOT-53-all.jar', '/usr/local/lib/R/site-library/sparklyr/java/sparklyr-2.1-2.11.jar', 8880, 67331 11:00:01 Log: /tmp/RtmpIKlxrC/file7d37fe46ea2_spark.log 11:00:01 11:00:01 11:00:01 ---- Output Log ---- 11:00:01 Warning: Master yarn-client is deprecated since 2.0. Please use master "yarn" with specified deploy mode instead. 11:00:01 19/02/09 10:00:00 INFO sparklyr: Session (67331) is starting under 127.0.0.1 port 8880 11:00:01 19/02/09 10:00:00 INFO sparklyr: Session (67331) found port 8880 is available 11:00:01 19/02/09 10:00:00 INFO sparklyr: Gateway (67331) is waiting for sparklyr client to connect to port 8880 11:00:01 11:00:01 ---- Error Log ---- 11:00:01 1: spark_connect(master = "local[*]", config = config) at testthat/test_transforms.R:18 11:00:01 2: shell_connection(master = master, spark_home = spark_home, app_name = app_name, version = version, 11:00:01 hadoop_version = hadoop_version, shell_args = shell_args, config = config, service = spark_config_value(config, 11:00:01 "sparklyr.gateway.service", FALSE), remote = spark_config_value(config, "sparklyr.gateway.remote", 11:00:01 spark_master_is_yarn_cluster(master, config)), extensions = extensions, batch = NULL) 11:00:01 3: start_shell(master = master, spark_home = spark_home, spark_version = version, app_name = app_name, 11:00:01 config = config, jars = spark_config_value(config, c("sparklyr.connect.jars", 11:00:01 "sparklyr.jars.default"), list()), packages = spark_config_value(config, 11:00:01 c("sparklyr.connect.packages", "sparklyr.defaultPackages")), extensions = extensions, 11:00:01 environment = environment, shell_args = shell_args, service = service, remote = remote, 11:00:01 batch = batch) 11:00:01 4: tryCatch({ 11:00:01 gatewayInfo <- spark_connect_gateway(gatewayAddress, gatewayPort, sessionId, 11:00:01 config = config, isStarting = TRUE) 11:00:01 }, error = function(e) { 11:00:01 abort_shell(paste("Failed while connecting to sparklyr to port (", gatewayPort, 11:00:01 if (spark_master_is_yarn_cluster(master, config)) { 11:00:01 paste0(") and address (", gatewayAddress) 11:00:01 } 11:00:01 else { 11:00:01 "" 11:00:01 }, ") for sessionid (", sessionId, "): ", e$message, sep = ""), spark_submit_path, 11:00:01 shell_args, output_file, error_file) 11:00:01 }) 11:00:01 5: tryCatchList(expr, classes, parentenv, handlers) 11:00:01 6: tryCatchOne(expr, names, parentenv, handlers[[1L]]) 11:00:01 7: value[[3L]](cond) 11:00:01 8: abort_shell(paste("Failed while connecting to sparklyr to port (", gatewayPort, if (spark_master_is_yarn_cluster(master, 11:00:01 config)) { 11:00:01 paste0(") and address (", gatewayAddress) 11:00:01 } else { 11:00:01 "" 11:00:01 }, ") for sessionid (", sessionId, "): ", e$message, sep = ""), spark_submit_path, 11:00:01 shell_args, output_file, error_file) 11:00:01 9: withr::with_options(list(warning.length = 8000), { 11:00:01 maxRows <- 100 11:00:01 Sys.sleep(1) 11:00:01 logLines <- if (!is.null(output_file) && file.exists(output_file)) { 11:00:01 outputContent <- readLines(output_file) 11:00:01 paste(tail(outputContent, n = maxRows), collapse = "\n") 11:00:01 } 11:00:01 else "" 11:00:01 errorLines <- if (!is.null(error_file) && file.exists(error_file)) 11:00:01 paste(tail(readLines(error_file), n = maxRows), collapse = "\n") 11:00:01 else "" 11:00:01 stop(paste(message, "\n", if (!is.null(spark_submit_path)) 11:00:01 paste(" Path: ", spark_submit_path, "\n", sep = "") 11:00:01 else "", if (!is.null(shell_args)) 11:00:01 paste(" Parameters: ", paste(shell_args, collapse = ", "), "\n", sep = "") 11:00:01 else "", if (!is.null(output_file)) 11:00:01 paste(" Log: ", output_file, "\n", sep = "") 11:00:01 else "", "\n\n", if (!is.null(output_file)) 11:00:01 "---- Output Log ----\n" 11:00:01 else "", logLines, "\n\n", if (!is.null(error_file)) 11:00:01 "---- Error Log ----\n" 11:00:01 else "", errorLines, sep = "")) 11:00:01 }) 11:00:01 10: force(code) 11:00:01 11: stop(paste(message, "\n", if (!is.null(spark_submit_path)) paste(" Path: ", spark_submit_path, 11:00:01 "\n", sep = "") else "", if (!is.null(shell_args)) paste(" Parameters: ", 11:00:01 paste(shell_args, collapse = ", "), "\n", sep = "") else "", if (!is.null(output_file)) paste(" Log: ", 11:00:01 output_file, "\n", sep = "") else "", "\n\n", if (!is.null(output_file)) "---- Output Log ----\n" else "", 11:00:01 logLines, "\n\n", if (!is.null(error_file)) "---- Error Log ----\n" else "", 11:00:01 errorLines, sep = "")) 11:00:01 11:00:48 ══ testthat results ═══════════════════════════════════════════════════════════ 11:00:48 OK: 20 SKIPPED: 0 FAILED: 1 11:00:48 1. Error: Test transformation from h2o frame to data frame (@test_transforms.R#18) 11:00:48 11:00:48 Error: testthat unit tests failed 11:00:48 In addition: Warning message: 11:00:48 In .cacheGenericTable(name, def, .genericTable) : 11:00:48 closing unused connection 3 (->localhost:8880) 11:00:48 Execution halted 11:00:48 11:00:48 > Task :sparkling-water-r:test FAILED 11:00:48 11:00:48 FAILURE: Build failed with an exception.

Environment

None

Status

Assignee

Jakub Hava

Reporter

Jakub Hava

Labels

None

Release Priority

None

CustomerVisible

No

testcase 1

None

testcase 2

None

testcase 3

None

h2ostream link

None

Affected Spark version

None

AffectedContact

None

AffectedCustomers

None

AffectedPilots

None

AffectedOpenSource

None

Support Assessment

None

Customer Request Type

None

Support ticket URL

None

End date

None

Baseline start date

None

Baseline end date

None

Task progress

None

Task mode

None

Fix versions

Priority

Major