Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix various issues with SQL generation, flink job routing, integration-tests #86

Merged
merged 3 commits into from
Jan 16, 2025

Conversation

jogrogan
Copy link
Collaborator

@jogrogan jogrogan commented Jan 16, 2025

  • Fixed issue with FLINK SQL syntax where query table: KAFKA.existing-topic-2 should have just been existing-topic-2.
  • Got deployment of Flink jobs working through Flink deployment cluster
    • Updated Flink connector options in kafkadb.yaml to the minimum required set needed to pass through to Flink
    • Needed to change Kafka connection mechanism. Connection on the command line using the forwarded port 9092 works via localhost to the 'external' strimzi cluster. However, this doesn't work for k8s pod to pod communication (Flink deployment pod -> Kafka cluster), pod connections need to use the 'internal' strimzi connection mechanisms one-kafka-bootstrap.kafka.svc.cluster.local:9094.
  • Integration tests has apparently always been failing but were incorrectly showing as passing due to the ... || kill cat port-forward.pid bit.
    • Fixed kind cluster routing that was causing these failures, also removes the ability to false report passing.
    • Added artifacts to the integration test workflow so on failure you can download the failure report since errors aren't printed to the terminal.
  • hoptimator-operator was failing on startup because of two separate issues:
    • rbac was missing the "pipelines" resources
    • The hoptimator-operator K8s pod doesn't have access to .kube/config, needed its own mechanism to determine namespace information.

Testing:

Set up flink datagen connector to generate data and insert it into existing-topic-1.
Ran:

0: Hoptimator> create or replace materialized view kafka."existing-topic-2" as select * from kafka."existing-topic-1";

which setup a new Flink job to insert the data from existing-topic-1 into existing-topic-2. Was able to verify the data was inserted via CLI Kafka consumer.

Put many helpful commands in the README

Also make integration-tests-kind works locally as well if you setup a kind cluster locally.

@jogrogan jogrogan force-pushed the jogrogan/sqlgateway branch from 7373f32 to 4c48812 Compare January 16, 2025 00:34
Copy link
Collaborator

@ryannedolan ryannedolan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥🔥🔥

@jogrogan jogrogan force-pushed the jogrogan/sqlgateway branch from cb12a2f to 11e3ecf Compare January 16, 2025 16:03
@jogrogan jogrogan changed the title Fix Flink SQL syntax and ability to push jobs to session cluster Fix various issues with SQL generation, flink job routing, integration-tests Jan 16, 2025
nodes:
- role: control-plane
extraPortMappings:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this seems important :)

} else {
namespace = new String(Files.readAllBytes(Paths.get(filePath)));
}
return new K8sContext("default", namespace, apiClient);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wow totally missed this

@jogrogan jogrogan merged commit c39e65e into main Jan 16, 2025
1 check passed
@jogrogan jogrogan deleted the jogrogan/sqlgateway branch January 16, 2025 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants