小编Ara*_*raf的帖子

AWS MSK - 在 ACL 打开的情况下创建 Kafka 主题时超时

我正在使用 AWS MSK 并且我想启用 ACL,但是当 ACL 开启时我无法创建主题。我正在使用命令行工具进行所有操作。这是我正在做的事情的总结:

  • 创建一个新集群
  • 创建一个主题 - 这很好用
  • 在 resource=CLUSTER 和 operation=ALL 上为 client1 打开 ACL
  • 使用 AdminClient 创建主题(通过提供 --bootstrap-server 选项) - 这会产生超时异常
  • 重新尝试创建相同的主题 - 这会给出一个错误,说明主题已经存在
  • 使用 AdminClient 列出主题 - 这不返回主题
  • 使用 Zookeeper 连接创建主题 - 这有效
  • 使用 Zookeeper connect 列出主题 - 这将返回我创建的所有主题(即使是那些超时的主题)

所以问题是该主题是在 Zookeeper 上创建的,但代理无法访问它。大概是由于我遗漏了一些 ACL 规则。

我运行的命令的原始输出:

ubuntu@ip-172-31-27-70:~/kafka_2.12-2.2.1/bin$ ./kafka-topics.sh --bootstrap-server $B --command-config ~/client1.properties \
--create --topic test3 --partitions 1 --replication-factor 1

Error while executing topic command : org.apache.kafka.common.errors.TimeoutException: Aborted due to timeout.
[2019-09-30 17:16:19,389] ERROR java.util.concurrent.ExecutionException: …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services apache-kafka apache-zookeeper kafka-topic aws-msk

8
推荐指数
1
解决办法
3103
查看次数

Kotlin Array初始化函数

我是Kotlin的新手,很难理解init函数在Array的上下文中是如何工作的.具体来说,如果我正在尝试String使用以下类型的数组:

val a = Array<String>(a_size){"n = $it"}
Run Code Online (Sandbox Code Playgroud)
  1. 这有效,但"n = $it"意味着什么?这看起来不像init函数,因为它在花括号内而不在括号内.

  2. 如果我想要一个数组,Int那个init函数或花括号里面的部分是什么样的?

arrays kotlin

4
推荐指数
1
解决办法
2021
查看次数

Kotlin:将ArrayList <String!>转换为Array <String>

我试图拆分用户输入的字符串.我的代码看起来类似于以下内容:

val aList = Array(5, {Array<String>(2){ " " }})
aList[0] = ArrayList(input.nextLine().split(" "))  // `split` returns a List
Run Code Online (Sandbox Code Playgroud)

但这会导致以下错误: error: type inference failed. Expected type mismatch: inferred type is ArrayList<String!> but Array<String> was expected.

经过一番挖掘后,我发现T!操作员意味着T or T?.我怎样才能投ArrayList<String!>Array<String>

kotlin

3
推荐指数
1
解决办法
2276
查看次数