kafka-sink-errors.td 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. # Copyright Materialize, Inc. and contributors. All rights reserved.
  2. #
  3. # Use of this software is governed by the Business Source License
  4. # included in the LICENSE file at the root of this repository.
  5. #
  6. # As of the Change Date specified in that file, in accordance with
  7. # the Business Source License, use of this software will be governed
  8. # by the Apache License, Version 2.0.
  9. $ set-arg-default single-replica-cluster=quickstart
  10. #
  11. # Test various errors that can happen at CREATE SINK time and check how they are reported to the user
  12. #
  13. > CREATE MATERIALIZED VIEW v1 (f1) AS VALUES (1);
  14. > CREATE CONNECTION kafka_conn
  15. TO KAFKA (BROKER '${testdrive.kafka-addr}', SECURITY PROTOCOL PLAINTEXT);
  16. > CREATE CONNECTION IF NOT EXISTS csr_conn TO CONFLUENT SCHEMA REGISTRY (
  17. URL '${testdrive.schema-registry-url}'
  18. );
  19. ! CREATE SINK invalid_key
  20. IN CLUSTER ${arg.single-replica-cluster}
  21. FROM v1
  22. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  23. KEY(f2)
  24. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  25. ENVELOPE DEBEZIUM
  26. contains:column referenced in KEY does not exist: f2
  27. ! CREATE SINK invalid_legacy_ids
  28. IN CLUSTER ${arg.single-replica-cluster}
  29. FROM v1
  30. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}', LEGACY IDS)
  31. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  32. ENVELOPE DEBEZIUM
  33. contains:LEGACY IDs option is not supported
  34. #
  35. # Sink dependencies
  36. #
  37. > CREATE SINK s1
  38. IN CLUSTER ${arg.single-replica-cluster}
  39. FROM v1
  40. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  41. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  42. ENVELOPE DEBEZIUM
  43. ! CREATE SINK s2
  44. IN CLUSTER ${arg.single-replica-cluster}
  45. FROM s1
  46. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  47. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  48. ENVELOPE DEBEZIUM
  49. contains:catalog item 'materialize.public.s1' is a sink and so cannot be depended upon
  50. ! CREATE VIEW v2 AS SELECT * FROM s1
  51. contains:catalog item 'materialize.public.s1' is a sink and so cannot be depended upon
  52. ! SELECT * FROM s1
  53. contains:catalog item 'materialize.public.s1' is a sink and so cannot be depended upon
  54. > DROP SINK s1
  55. $ file-append path=invalid-keytab
  56. nonsense
  57. #
  58. # FORMAT
  59. #
  60. ! CREATE SINK invalid_format
  61. IN CLUSTER ${arg.single-replica-cluster}
  62. FROM v1
  63. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  64. ENVELOPE DEBEZIUM
  65. contains:sink without format not yet supported
  66. ! CREATE SINK invalid_format
  67. IN CLUSTER ${arg.single-replica-cluster}
  68. FROM v1
  69. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  70. FORMAT NO_SUCH_FORMAT
  71. ENVELOPE DEBEZIUM
  72. contains:found identifier "no_such_format"
  73. ! CREATE SINK invalid_envelope
  74. IN CLUSTER ${arg.single-replica-cluster}
  75. FROM v1
  76. INTO KAFKA CONNECTION kafka_conn (TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}')
  77. FORMAT JSON
  78. contains:ENVELOPE clause is required
  79. #
  80. # Topic Options
  81. #
  82. ! CREATE SINK invalid_topic_options
  83. IN CLUSTER ${arg.single-replica-cluster}
  84. FROM v1
  85. INTO KAFKA CONNECTION kafka_conn (
  86. TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}',
  87. TOPIC REPLICATION FACTOR -5
  88. )
  89. KEY(f1)
  90. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  91. ENVELOPE DEBEZIUM
  92. contains:TOPIC REPLICATION FACTOR must be a positive integer
  93. ! CREATE SINK invalid_topic_options
  94. IN CLUSTER ${arg.single-replica-cluster}
  95. FROM v1
  96. INTO KAFKA CONNECTION kafka_conn (
  97. TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}',
  98. TOPIC PARTITION COUNT 'two'
  99. )
  100. KEY(f1)
  101. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  102. ENVELOPE DEBEZIUM
  103. contains:invalid TOPIC PARTITION COUNT: cannot use value as number
  104. ! CREATE SINK invalid_topic_options
  105. IN CLUSTER ${arg.single-replica-cluster}
  106. FROM v1
  107. INTO KAFKA CONNECTION kafka_conn (
  108. TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}',
  109. TOPIC CONFIG 123
  110. )
  111. KEY(f1)
  112. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  113. ENVELOPE DEBEZIUM
  114. contains:invalid TOPIC CONFIG: cannot use value as map
  115. ! CREATE SINK invalid_topic_options
  116. IN CLUSTER ${arg.single-replica-cluster}
  117. FROM v1
  118. INTO KAFKA CONNECTION kafka_conn (
  119. TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}',
  120. TOPIC CONFIG MAP['x' => 1]
  121. )
  122. KEY(f1)
  123. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  124. ENVELOPE DEBEZIUM
  125. contains:invalid TOPIC CONFIG: cannot use value as string
  126. ! CREATE SINK invalid_topic_options
  127. IN CLUSTER ${arg.single-replica-cluster}
  128. FROM v1
  129. INTO KAFKA CONNECTION kafka_conn (
  130. TOPIC 'testdrive-kafka-sink-errors-${testdrive.seed}',
  131. TOPIC CONFIG MAP[1 => 'x']
  132. )
  133. KEY(f1)
  134. FORMAT AVRO USING CONFLUENT SCHEMA REGISTRY CONNECTION csr_conn
  135. ENVELOPE DEBEZIUM
  136. contains:Expected string, found number
  137. # Expect empty output
  138. > SHOW SINKS