This is an automated email from the ASF dual-hosted git repository.
cgivre pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/drill.git
The following commit(s) were added to refs/heads/master by this push:
new 713b913be9 DRILL-8550: Fix Flaky Splunk Tests (#3060)
713b913be9 is described below
commit 713b913be94836d49ce366ee1285330b12c2f74e
Author: Charles S. Givre <[email protected]>
AuthorDate: Wed Jul 22 13:23:34 2026 -0400
DRILL-8550: Fix Flaky Splunk Tests (#3060)
---
.../drill/exec/store/splunk/SplunkTestSuite.java | 24 ++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git
a/contrib/storage-splunk/src/test/java/org/apache/drill/exec/store/splunk/SplunkTestSuite.java
b/contrib/storage-splunk/src/test/java/org/apache/drill/exec/store/splunk/SplunkTestSuite.java
index 8530270c1c..eaa00263ce 100644
---
a/contrib/storage-splunk/src/test/java/org/apache/drill/exec/store/splunk/SplunkTestSuite.java
+++
b/contrib/storage-splunk/src/test/java/org/apache/drill/exec/store/splunk/SplunkTestSuite.java
@@ -107,14 +107,22 @@ public class SplunkTestSuite extends ClusterTest {
}
}
+ // Pin the patch version. "splunk/splunk:9.3" is a mutable tag; it was
+ // republished on 2026-07-01 and silently broke CI on every branch. Bump this
+ // deliberately so an upstream push can never turn the build red on its own.
+ //
+ // Talk to splunkd over its default HTTPS listener rather than setting
+ // SPLUNKD_SSL_ENABLE=false. Disabling splunkd SSL is a path Splunk has
+ // regressed repeatedly (see splunk/docker-splunk#639, still open), and it
+ // broke again in 9.3.14. The container's cert is self-signed, so the plugin
+ // configs below turn off certificate and hostname validation.
@ClassRule
public static GenericContainer<?> splunk = new GenericContainer<>(
- DockerImageName.parse("splunk/splunk:9.3")
+ DockerImageName.parse("splunk/splunk:9.3.14")
)
.withExposedPorts(8089, 8089)
.withEnv("SPLUNK_START_ARGS", "--accept-license")
.withEnv("SPLUNK_PASSWORD", SPLUNK_PASS)
- .withEnv("SPLUNKD_SSL_ENABLE", "false")
.withCopyFileToContainer(
org.testcontainers.utility.MountableFile.forHostPath(
createDefaultYmlFile().toPath()
@@ -159,8 +167,11 @@ public class SplunkTestSuite extends ClusterTest {
StoragePluginRegistry pluginRegistry =
cluster.drillbit().getContext().getStorage();
SPLUNK_STORAGE_PLUGIN_CONFIG = new SplunkPluginConfig(
SPLUNK_LOGIN, SPLUNK_PASS,
- "http", hostname, port,
- null, null, null, null, false, true, // app, owner, token, cookie,
validateCertificates
+ "https", hostname, port,
+ // app, owner, token, cookie, validateCertificates, validateHostname.
+ // The container serves a self-signed cert for a hostname that never
matches
+ // the mapped localhost port, so both checks must be off.
+ null, null, null, null, false, false,
"1", "now",
null,
4,
@@ -181,8 +192,9 @@ public class SplunkTestSuite extends ClusterTest {
SPLUNK_STORAGE_PLUGIN_CONFIG_WITH_USER_TRANSLATION = new
SplunkPluginConfig(
null, null, // username, password
- "http", hostname, port,
- null, null, null, null, false, false, // app, owner, token, cookie,
validateCertificates
+ "https", hostname, port,
+ // app, owner, token, cookie, validateCertificates, validateHostname
+ null, null, null, null, false, false,
"1", "now",
credentialsProvider,
4,