trinodb / benchto Goto Github PK
View Code? Open in Web Editor NEWFramework for running macro benchmarks in a clustered environment
License: Apache License 2.0
Framework for running macro benchmarks in a clustered environment
License: Apache License 2.0
Hi, I'm getting a 401 Unauthorized
error while trying to execute benchmark over a HTTPS-enabled Presto cluster. I can see that Presto receives the queries from Benchto and runs them without a hitch. I'm thinking that Benchto has troubles getting the metrics/results back. I got this idea because I noticed that we're using two separate Java classes to send (presto driver) and retrieve (benchto-driver) the queries .
Presto version: 340
Presto authn: via LDAP
Benchmark driver: 340
I also used the same build to run a benchmark over HTTP and it worked flawlessly.
benchmark-service:
url: "http://<my-benchto-svc>:8081"
data-sources:
presto:
url: jdbc:presto://<presto-url>SSL=true
username: "<user>"
password: "<pass>"
driver-class-name: io.prestosql.jdbc.PrestoDriver
SSL: true
environment:
name: <my-env>
presto:
url: "https://<presto-url>?username=<user>&password=<pass>"
# username: <user>
# password: <pass>
benchmark:
feature:
presto:
metrics.collection.enabled: true
macros:
sleep-4s:
command: echo "Sleeping for 4s" && sleep 4
I think I also got where the error came from. When I try to go to this URL, the browser still asks for my login credentials. After pressing cancel, I get the Unauthorized
response.
https://<presto-url>/v1/query/<query-id>?SSL=true&user=<user>&password=<pass>
Can somebody point me to the correct way of doing it? Or is it possible at all? Thanks!
Hi, I run tpcds benchmark use benchto. But I found some query is lost.
My tpcds.yaml file is like this:
variables:
1:
query: q01,q02,q03,q04,q05,q06,q07,q08,q09,q10,q11,q12,q13,q14_1,q14_2,q15,q16,q17,q18,q19,q20,q21,q22,q23_1,q23_2,q24_1,q24_2,q25,q26,q27,q28,q29,q30,q31,q32,q33,q34,q35,q36,q37,q38,q39_1,q39_2,q40,q41,q42,q43,q44,q45,q46,q47,q48,q49,q50,q51,q52,q53,q54,q55,q56,q57,q58,q59,q60,q61,q62,q63,q64,q65,q66,q67,q68,q69,q70,q71,q72,q73,q74,q75,q76,q77,q78,q79,q80,q81,q82,q83,q84,q85,q86,q87,q88,q89,q90,q91,q92,q93,q94,q95,q96,q97,q98,q99
schema: ${tpcds_1}
join_reordering_strategy: ELIMINATE_CROSS_JOINS, AUTOMATIC
join_distribution_type: PARTITIONED, AUTOMATIC
Pulling benchto-service for docker returns Pulling benchto-service (teradatalabs/benchto-service:latest)... ERROR: pull access denied for teradatalabs/benchto-service, repository does not exist or may require 'docker login'
Full workflow:
$ sudo docker-compose -f docker-compose.yml up
Creating network "benchto-service-docker_default" with the default driver
Pulling benchto-postgres (postgres:9.6.2)...
9.6.2: Pulling from library/postgres
10a267c67f42: Pull complete
e9a920522e33: Pull complete
6888e696bd71: Pull complete
798096eed143: Pull complete
fb58419959b5: Pull complete
97f9ec09cb68: Pull complete
d58678d9d3ab: Pull complete
ece2bc4a78f4: Pull complete
eadac36b8440: Pull complete
4da13987a6ca: Pull complete
bd2eab93fc5a: Pull complete
2efd8a94a8d7: Pull complete
cd1f07c4ebbe: Pull complete
Digest: sha256:5284ba74a1065e34cf1bfccd64caf8c497c8dc623d6207b060b5ebd369427d34
Status: Downloaded newer image for postgres:9.6.2
Pulling benchto-graphite (sitespeedio/graphite:0.9.14)...
0.9.14: Pulling from sitespeedio/graphite
a3ed95caeb02: Pull complete
c30404ebb54a: Pull complete
d2ff49536f4d: Pull complete
7d1e398e460e: Pull complete
f94adccdbb9c: Pull complete
69037c0473cf: Pull complete
e2e46e3d91f7: Pull complete
a205dfad608b: Pull complete
e7e4a8fa2a05: Pull complete
18f44358dee7: Pull complete
8a3964a00919: Pull complete
243f8e44bdbb: Pull complete
f4efa396832c: Pull complete
25b18cef826f: Pull complete
5950fd00561f: Pull complete
ae0faa7b8e2e: Pull complete
87accbf76bd3: Pull complete
a2ea46864634: Pull complete
3e4f717319c2: Pull complete
57ed25758f7b: Pull complete
a750b13ad338: Pull complete
4ca5d38db4d3: Pull complete
b3d76b53d1fc: Pull complete
1d325d0474dc: Pull complete
5d424970bc7b: Pull complete
efbc77ff81ee: Pull complete
05e3d23824b7: Pull complete
e9524fc1ae15: Pull complete
d5054eca12f3: Pull complete
b77b00ef6d60: Pull complete
f99acea72ee5: Pull complete
ad419310bb48: Pull complete
b9c0dd8220de: Pull complete
af18ac7a173d: Pull complete
Digest: sha256:fb3a4b1c94a11debf5d658f6a3c9c34cb87933e6017b2e34375b5789dfbb4e54
Status: Downloaded newer image for sitespeedio/graphite:0.9.14
Pulling benchto-grafana (grafana/grafana:4.1.2)...
4.1.2: Pulling from grafana/grafana
43c265008fae: Pull complete
c2ab838d4052: Pull complete
e8a816c8f505: Pull complete
Digest: sha256:05d925bd64cd3f9d6f56a4353774ccec588586579ab738f933cd002b7f96aca3
Status: Downloaded newer image for grafana/grafana:4.1.2
Pulling benchto-service (teradatalabs/benchto-service:latest)...
ERROR: The image for the service you're trying to recreate has been removed. If you continue, volume data could be lost. Consider backing up your data before continuing.
Continue with the new image? [yN]y
Pulling benchto-service (teradatalabs/benchto-service:latest)...
ERROR: pull access denied for teradatalabs/benchto-service, repository does not exist or may require 'docker login'```
I am running TPC-H benchmarking via Benchto, but when the query fails, the Benchto driver stops with an ExecutionException. I want Benchto to continue running other queries even if a query fails.
Here are some relevant logs.
13:27:44 20:27:37.990 ERROR [pool-8-thread-1] i.t.b.d.l.LoggingBenchmarkExecutionListener - Query failed: q09 (6/6), execution error: Query failed (#20220921_202619_00023_tyrw7): Query exceeded per-node memory limit of 26.89GB [Allocated: 26.89GB, Delta: 914.75kB, Top Consumers: {HashBuilderOperator=23.10GB, ScanFilterAndProjectOperator=3.56GB, PartitionedOutputOperator=214.35MB}]
13:27:44 20:27:37.990 INFO [main] i.t.b.d.l.LoggingBenchmarkExecutionListener - Finished benchmark: presto/tpch_medium_parquet.cluster_medium.run_187
13:27:44 Sep 21, 2022 8:27:37 PM org.springframework.context.annotation.AnnotationConfigApplicationContext doClose
13:27:44 INFO: Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@79845c99: startup date [Wed Sep 21 20:03:07 UTC 2022]; root of context hierarchy
13:27:44 Sep 21, 2022 8:27:37 PM org.springframework.jmx.export.annotation.AnnotationMBeanExporter destroy
13:27:44 INFO: Unregistering JMX-exposed beans on shutdown
13:27:44 Sep 21, 2022 8:27:37 PM org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor shutdown
13:27:44 INFO: Shutting down ExecutorService 'defaultTaskExecutor'
13:27:44 20:27:43.080 ERROR [main] io.trino.benchto.driver.DriverApp - Benchmark execution failed: Listener failed with: java.util.concurrent.ExecutionException: org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error
13:27:44 java.lang.RuntimeException: Listener failed with: java.util.concurrent.ExecutionException: org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error
13:27:44 at io.trino.benchto.driver.listeners.benchmark.BenchmarkStatusReporter.processCompletedFutures(BenchmarkStatusReporter.java:76) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.execution.ExecutionDriver.executeBenchmarks(ExecutionDriver.java:128) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.execution.ExecutionDriver.execute(ExecutionDriver.java:71) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.DriverApp.main(DriverApp.java:77) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_332]
13:27:44 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_332]
13:27:44 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_332]
13:27:44 at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_332]
13:27:44 at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53) [trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at java.lang.Thread.run(Thread.java:750) [na:1.8.0_332]
13:27:44 Caused by: java.util.concurrent.ExecutionException: org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error
13:27:44 at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1908) ~[na:1.8.0_332]
13:27:44 at io.trino.benchto.driver.listeners.benchmark.BenchmarkStatusReporter.processCompletedFutures(BenchmarkStatusReporter.java:69) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 ... 9 common frames omitted
13:27:44 Caused by: org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error
13:27:44 at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:94) ~[spring-web-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:614) ~[spring-web-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:570) ~[spring-web-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:538) ~[spring-web-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.web.client.RestTemplate.postForObject(RestTemplate.java:340) ~[spring-web-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at io.trino.benchto.driver.service.BenchmarkServiceClient.postForObject(BenchmarkServiceClient.java:133) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.service.BenchmarkServiceClient.postForObject(BenchmarkServiceClient.java:122) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.service.BenchmarkServiceClient.finishExecution(BenchmarkServiceClient.java:108) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.service.BenchmarkServiceClient$$FastClassBySpringCGLIB$$2bf18955.invoke(<generated>) ~[spring-core-4.1.6.RELEASE.jar!/:0.13-60-gd9a0e3f]
13:27:44 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) ~[spring-aop-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.retry.interceptor.RetryOperationsInterceptor$1.doWithRetry(RetryOperationsInterceptor.java:74) ~[spring-retry-1.1.2.RELEASE.jar!/:na]
13:27:44 at org.springframework.retry.support.RetryTemplate.doExecute(RetryTemplate.java:263) ~[spring-retry-1.1.2.RELEASE.jar!/:na]
13:27:44 at org.springframework.retry.support.RetryTemplate.execute(RetryTemplate.java:154) ~[spring-retry-1.1.2.RELEASE.jar!/:na]
13:27:44 at org.springframework.retry.interceptor.RetryOperationsInterceptor.invoke(RetryOperationsInterceptor.java:101) ~[spring-retry-1.1.2.RELEASE.jar!/:na]
13:27:44 at org.springframework.retry.annotation.AnnotationAwareRetryOperationsInterceptor.invoke(AnnotationAwareRetryOperationsInterceptor.java:118) ~[spring-retry-1.1.2.RELEASE.jar!/:na]
13:27:44 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) ~[spring-aop-4.1.6.RELEASE.jar!/:4.1.6.RELEASE]
13:27:44 at io.trino.benchto.driver.service.BenchmarkServiceClient$$EnhancerBySpringCGLIB$$ddd26b16.finishExecution(<generated>) ~[spring-core-4.1.6.RELEASE.jar!/:0.13-60-gd9a0e3f]
13:27:44 at io.trino.benchto.driver.listeners.BenchmarkServiceExecutionListener.lambda$executionFinished$9(BenchmarkServiceExecutionListener.java:162) ~[trino-benchto-driver-0.20.jar!/:0.13-60-gd9a0e3f]
13:27:44 at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:670) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:646) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1609) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_332]
13:27:44 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_332]
13:27:44 ... 1 common frames omitted
When there are too many entries, removing them from the cart one by one would be very painful
We followed this document https://github.com/trinodb/benchto/tree/master/docs/getting-started and when running the these command, it fails.
cd docs/getting-started/tests
dockerhost=IP_OF_DOCKER_HOST mvn package exec:java -Ddep.benchto-driver.version=0.19-SNAPSHOT
[INFO] Scanning for projects...
[INFO]
[INFO] --------------< io.trino.benchto:benchto-getting-started >--------------
[INFO] Building benchto-getting-started 1.0.0-SNAPSHOT
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- resources:3.3.1:resources (default-resources) @ benchto-getting-started ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 4 resources from src/main/resources to target/classes
[INFO]
[INFO] --- compiler:3.11.0:compile (default-compile) @ benchto-getting-started ---
[INFO] No sources to compile
[INFO]
[INFO] --- resources:3.3.1:testResources (default-testResources) @ benchto-getting-started ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/centos/benchto/docs/getting-started/tests/src/test/resources
[INFO]
[INFO] --- compiler:3.11.0:testCompile (default-testCompile) @ benchto-getting-started ---
[INFO] No sources to compile
[INFO]
[INFO] --- surefire:3.1.2:test (default-test) @ benchto-getting-started ---
[INFO] No tests to run.
[INFO]
[INFO] --- jar:3.3.0:jar (default-jar) @ benchto-getting-started ---
[INFO]
[INFO] --- exec:1.4.0:java (default-cli) @ benchto-getting-started ---
16:11:46.058 ERROR [io.trino.benchto.driver.DriverApp.main()] o.s.boot.SpringApplication - Application run failed
java.lang.IllegalStateException: Location ‘file:./config/*/application-classpath:/application.yaml.yaml’ must end with ‘*/’
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.boot.context.config.LocationResourceLoader.validatePattern(LocationResourceLoader.java:134)
at org.springframework.boot.context.config.LocationResourceLoader.getResources(LocationResourceLoader.java:95)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolvePattern(StandardConfigDataLocationResolver.java:311)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolve(StandardConfigDataLocationResolver.java:297)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolve(StandardConfigDataLocationResolver.java:249)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolveProfileSpecific(StandardConfigDataLocationResolver.java:148)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.lambda$resolve$2(ConfigDataLocationResolvers.java:120)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:126)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:119)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:107)
at org.springframework.boot.context.config.ConfigDataImporter.resolve(ConfigDataImporter.java:105)
at org.springframework.boot.context.config.ConfigDataImporter.resolve(ConfigDataImporter.java:97)
at org.springframework.boot.context.config.ConfigDataImporter.resolveAndLoad(ConfigDataImporter.java:85)
at org.springframework.boot.context.config.ConfigDataEnvironmentContributors.withProcessedImports(ConfigDataEnvironmentContributors.java:116)
at org.springframework.boot.context.config.ConfigDataEnvironment.processWithProfiles(ConfigDataEnvironment.java:311)
at org.springframework.boot.context.config.ConfigDataEnvironment.processAndApply(ConfigDataEnvironment.java:232)
at org.springframework.boot.context.config.ConfigDataEnvironmentPostProcessor.postProcessEnvironment(ConfigDataEnvironmentPostProcessor.java:102)
at org.springframework.boot.context.config.ConfigDataEnvironmentPostProcessor.postProcessEnvironment(ConfigDataEnvironmentPostProcessor.java:94)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:102)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:87)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:85)
at org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:66)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:120)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:114)
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:65)
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:344)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:302)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:164)
at io.trino.benchto.driver.DriverApp.main(DriverApp.java:77)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293)
at java.base/java.lang.Thread.run(Thread.java:833)
16:11:46.060 ERROR [io.trino.benchto.driver.DriverApp.main()] io.trino.benchto.driver.DriverApp - Benchmark execution failed: Location ‘file:./config/*/application-classpath:/application.yaml.yaml’ must end with ‘*/’
java.lang.IllegalStateException: Location ‘file:./config/*/application-classpath:/application.yaml.yaml’ must end with ‘*/’
at org.springframework.util.Assert.state(Assert.java:97)
at org.springframework.boot.context.config.LocationResourceLoader.validatePattern(LocationResourceLoader.java:134)
at org.springframework.boot.context.config.LocationResourceLoader.getResources(LocationResourceLoader.java:95)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolvePattern(StandardConfigDataLocationResolver.java:311)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolve(StandardConfigDataLocationResolver.java:297)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolve(StandardConfigDataLocationResolver.java:249)
at org.springframework.boot.context.config.StandardConfigDataLocationResolver.resolveProfileSpecific(StandardConfigDataLocationResolver.java:148)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.lambda$resolve$2(ConfigDataLocationResolvers.java:120)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:126)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:119)
at org.springframework.boot.context.config.ConfigDataLocationResolvers.resolve(ConfigDataLocationResolvers.java:107)
at org.springframework.boot.context.config.ConfigDataImporter.resolve(ConfigDataImporter.java:105)
at org.springframework.boot.context.config.ConfigDataImporter.resolve(ConfigDataImporter.java:97)
at org.springframework.boot.context.config.ConfigDataImporter.resolveAndLoad(ConfigDataImporter.java:85)
at org.springframework.boot.context.config.ConfigDataEnvironmentContributors.withProcessedImports(ConfigDataEnvironmentContributors.java:116)
at org.springframework.boot.context.config.ConfigDataEnvironment.processWithProfiles(ConfigDataEnvironment.java:311)
at org.springframework.boot.context.config.ConfigDataEnvironment.processAndApply(ConfigDataEnvironment.java:232)
at org.springframework.boot.context.config.ConfigDataEnvironmentPostProcessor.postProcessEnvironment(ConfigDataEnvironmentPostProcessor.java:102)
at org.springframework.boot.context.config.ConfigDataEnvironmentPostProcessor.postProcessEnvironment(ConfigDataEnvironmentPostProcessor.java:94)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEnvironmentPreparedEvent(EnvironmentPostProcessorApplicationListener.java:102)
at org.springframework.boot.env.EnvironmentPostProcessorApplicationListener.onApplicationEvent(EnvironmentPostProcessorApplicationListener.java:87)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:85)
at org.springframework.boot.SpringApplicationRunListeners.lambda$environmentPrepared$2(SpringApplicationRunListeners.java:66)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:120)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:114)
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:65)
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:344)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:302)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:164)
at io.trino.benchto.driver.DriverApp.main(DriverApp.java:77)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293)
at java.base/java.lang.Thread.run(Thread.java:833)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.