confluentinc / confluentinc/ksql
Exception when running ksql-server-start from terminal
- Dominant language
- Java
- Stars
- 315
- Forks
- 1k
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 36
Description
My VM is a CentOS 7 in an Windows 10 host.
I'm trying to run ksql-server-start in standalone mode, following the instructions in the main page.
So far, I get this output:
```
log4j:ERROR Could not find value for key log4j.appender.clients
log4j:ERROR Could not instantiate appender named "clients".
log4j:ERROR Could not find value for key log4j.appender.connect
log4j:ERROR Could not instantiate appender named "connect".
[2021-07-27 22:07:34,690] INFO KsqlConfig values:
ksql.access.validator.enable = auto
ksql.authorization.cache.expiry.time.secs = 30
ksql.authorization.cache.max.entries = 10000
ksql.cast.strings.preserve.nulls = true
ksql.connect.url = http://localhost:8083
ksql.connect.worker.config =
ksql.create.or.replace.enabled = true
ksql.error.classifier.regex =
ksql.extension.dir = ext
ksql.hidden.topics = [_confluent.*, __confluent.*, _schemas, __consumer_offsets, __transaction_state, connect-configs, connect-offsets, connect-status, connect-statuses]
ksql.insert.into.values.enabled = true
ksql.internal.topic.min.insync.replicas = 1
ksql.internal.topic.replicas = 1
ksql.lambdas.enabled = true
ksql.metastore.backup.location =
ksql.metrics.extension = null
ksql.metrics.tags.custom =
ksql.nested.error.set.null = true
ksql.output.topic.name.prefix =
ksql.persistence.default.format.key = KAFKA
ksql.persistence.default.format.value = null
ksql.persistence.wrap.single.values = null
ksql.persistent.prefix = query_
ksql.properties.overrides.denylist = []
ksql.pull.queries.enable = true
ksql.query.error.max.queue.size = 10
ksql.query.persistent.active.limit = 2147483647
ksql.query.persistent.max.bytes.buffering.total = -1
ksql.query.pull.enable.standby.reads = false
ksql.query.pull.interpreter.enabled = true
ksql.query.pull.max.allowed.offset.lag = 9223372036854775807
ksql.query.pull.max.concurrent.requests = 2147483647
ksql.query.pull.max.qps = 2147483647
ksql.query.pull.metrics.enabled = true
ksql.query.pull.table.scan.enabled = false
ksql.query.pull.thread.pool.size = 100
ksql.query.push.scalable.enabled = false
ksql.query.retry.backoff.initial.ms = 15000
ksql.query.retry.backoff.max.ms = 900000
ksql.query.status.running.threshold.seconds = 300
ksql.query.transient.max.bytes.buffering.total = -1
ksql.queryanonymizer.cluster_namespace = null
ksql.queryanonymizer.logs_enabled = true
ksql.readonly.topics = [_confluent.*, __confluent.*, _schemas, __consumer_offsets, __transaction_state, connect-configs, connect-offsets, connect-status, connect-statuses]
ksql.schema.registry.url =
ksql.security.extension.class = null
ksql.service.id = default_
ksql.sink.window.change.log.additional.retention = 1000000
ksql.streams.shutdown.timeout.ms = 300000
ksql.suppress.buffer.size.bytes = -1
ksql.suppress.enabled = false
ksql.timestamp.throw.on.invalid = false
ksql.transient.prefix = transient_
ksql.udf.collect.metrics = false
ksql.udf.enable.security.manager = true
ksql.udfs.enabled = true
ksql.variable.substitution.enable = true
metric.reporters = []
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2]
ssl.endpoint.identification.algorithm = https
ssl.engine.factory.class = null
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.certificate.chain = null
ssl.keystore.key = null
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLSv1.2
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.certificates = null
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
(io.confluent.ksql.util.KsqlConfig:376)
[2021-07-27 22:07:34,736] INFO KsqlRestConfig values:
access.control.allow.headers = []
access.control.allow.methods = []
access.control.allow.origin =
authentication.method = NONE
authentication.realm =
authentication.roles = [*]
authentication.skip.paths = []
ksql.advertised.listener = null
ksql.authentication.plugin.class = null
ksql.healthcheck.interval.ms = 5000
ksql.heartbeat.check.interval.ms = 200
ksql.heartbeat.discover.interval.ms = 2000
ksql.heartbeat.enable = false
ksql.heartbeat.missed.threshold.ms = 3
ksql.heartbeat.send.interval.ms = 100
ksql.heartbeat.thread.pool.size = 3
ksql.heartbeat.window.ms = 2000
ksql.idle.connection.timeout.seconds = 86400
ksql.internal.listener = null
ksql.internal.ssl.client.authentication = NONE
ksql.lag.reporting.enable = false
ksql.lag.reporting.send.interval.ms = 5000
ksql.local.commands.location =
ksql.logging.server.rate.limited.request.paths =
ksql.logging.server.rate.limited.response.codes =
ksql.max.push.queries = 100
ksql.server.command.blocked.threshold.error.ms = 15000
ksql.server.command.response.timeout.ms = 5000
ksql.server.error.messages = class io.confluent.ksql.rest.DefaultErrorMessages
ksql.server.exception.uncaught.handler.enable = false
ksql.server.install.dir = /usr
ksql.server.preconditions = []
ksql.server.websockets.num.threads = 5
ksql.ssl.keystore.alias.external =
ksql.ssl.keystore.alias.internal =
ksql.verticle.instances = 4
ksql.worker.pool.size = 100
listeners = [http://0.0.0.0:8088]
query.stream.disconnect.check = 1000
ssl.cipher.suites = []
ssl.client.auth = false
ssl.client.authentication = NONE
ssl.enabled.protocols = [TLSv1.2]
ssl.key.password = [hidden]
ssl.keystore.location =
ssl.keystore.password = [hidden]
ssl.keystore.reload = false
ssl.keystore.type = JKS
ssl.keystore.watch.location =
ssl.truststore.location =
ssl.truststore.password = [hidden]
ssl.truststore.type = JKS
(io.confluent.ksql.rest.server.KsqlRestConfig:376)
[2021-07-27 22:07:34,746] INFO KsqlConfig values:
ksql.access.validator.enable = auto
ksql.authorization.cache.expiry.time.secs = 30
ksql.authorization.cache.max.entries = 10000
ksql.cast.strings.preserve.nulls = true
ksql.connect.url = http://localhost:8083
ksql.connect.worker.config =
ksql.create.or.replace.enabled = true
ksql.error.classifier.regex =
ksql.extension.dir = ext
ksql.hidden.topics = [_confluent.*, __confluent.*, _schemas, __consumer_offsets, __transaction_state, connect-configs, connect-offsets, connect-status, connect-statuses]
ksql.insert.into.values.enabled = true
ksql.internal.topic.min.insync.replicas = 1
ksql.internal.topic.replicas = 1
ksql.lambdas.enabled = true
ksql.metastore.backup.location =
ksql.metrics.extension = null
ksql.metrics.tags.custom =
ksql.nested.error.set.null = true
ksql.output.topic.name.prefix =
ksql.persistence.default.format.key = KAFKA
ksql.persistence.default.format.value = null
ksql.persistence.wrap.single.values = null
ksql.persistent.prefix = query_
ksql.properties.overrides.denylist = []
ksql.pull.queries.enable = true
ksql.query.error.max.queue.size = 10
ksql.query.persistent.active.limit = 2147483647
ksql.query.persistent.max.bytes.buffering.total = -1
ksql.query.pull.enable.standby.reads = false
ksql.query.pull.interpreter.enabled = true
ksql.query.pull.max.allowed.offset.lag = 9223372036854775807
ksql.query.pull.max.concurrent.requests = 2147483647
ksql.query.pull.max.qps = 2147483647
ksql.query.pull.metrics.enabled = true
ksql.query.pull.table.scan.enabled = false
ksql.query.pull.thread.pool.size = 100
ksql.query.push.scalable.enabled = false
ksql.query.retry.backoff.initial.ms = 15000
ksql.query.retry.backoff.max.ms = 900000
ksql.query.status.running.threshold.seconds = 300
ksql.query.transient.max.bytes.buffering.total = -1
ksql.queryanonymizer.cluster_namespace = null
ksql.queryanonymizer.logs_enabled = true
ksql.readonly.topics = [_confluent.*, __confluent.*, _schemas, __consumer_offsets, __transaction_state, connect-configs, connect-offsets, connect-status, connect-statuses]
ksql.schema.registry.url =
ksql.security.extension.class = null
ksql.service.id = default_
ksql.sink.window.change.log.additional.retention = 1000000
ksql.streams.shutdown.timeout.ms = 300000
ksql.suppress.buffer.size.bytes = -1
ksql.suppress.enabled = false
ksql.timestamp.throw.on.invalid = false
ksql.transient.prefix = transient_
ksql.udf.collect.metrics = false
ksql.udf.enable.security.manager = true
ksql.udfs.enabled = true
ksql.variable.substitution.enable = true
metric.reporters = []
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2]
ssl.endpoint.identification.algorithm = https
ssl.engine.factory.class = null
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.certificate.chain = null
ssl.keystore.key = null
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLSv1.2
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.certificates = null
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
(io.confluent.ksql.util.KsqlConfig:376)
log4j:WARN No appenders could be found for logger (org.apache.kafka.connect.json.JsonConverterConfig).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" java.lang.BootstrapMethodError: java.lang.NoSuchMethodError: io.confluent.kafka.schemaregistry.client.CachedSchemaRegistryClient.(Lio/confluent/kafka/schemaregistry/client/rest/RestService;ILjava/util/List;Ljava/util/Map;Ljava/util/Map;)V
at io.confluent.ksql.schema.registry.KsqlSchemaRegistryClientFactory.(KsqlSchemaRegistryClientFactory.java:67)
at io.confluent.ksql.schema.registry.KsqlSchemaRegistryClientFactory.(KsqlSchemaRegistryClientFactory.java:59)
at io.confluent.ksql.rest.server.KsqlRestApplication.buildApplication(KsqlRestApplication.java:619)
at io.confluent.ksql.rest.server.KsqlServerMain.createExecutable(KsqlServerMain.java:155)
at io.confluent.ksql.rest.server.KsqlServerMain.main(KsqlServerMain.java:62)
Caused by: java.lang.NoSuchMethodError: io.confluent.kafka.schemaregistry.client.CachedSchemaRegistryClient.(Lio/confluent/kafka/schemaregistry/client/rest/RestService;ILjava/util/List;Ljava/util/Map;Ljava/util/Map;)V
at java.lang.invoke.MethodHandleNatives.resolve(Native Method)
at java.lang.invoke.MemberName$Factory.resolve(MemberName.java:975)
at java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1000)
at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:1394)
at java.lang.invoke.MethodHandles$Lookup.linkMethodHandleConstant(MethodHandles.java:1750)
at java.lang.invoke.MethodHandleNatives.linkMethodHandleConstant(MethodHandleNatives.java:477)
```
I made sure all configurations are correct and my bootstrap server is working.
Contributor guide
Research direction
Start with the reported ksql-server-start command and the stack trace through KsqlServerMain, KsqlRestApplication, and KsqlSchemaRegistryClientFactory. Compare the CachedSchemaRegistryClient constructor expected by KsqlSchemaRegistryClientFactory with the runtime dependency versions. Done means standalone startup completes without the NoSuchMethodError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- stream-processing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100