Skip to content

Add native RabbitMQ connectors#207

Open
danghoangnhan wants to merge 13 commits intopathwaycom:mainfrom
danghoangnhan:rabbitmq-connector
Open

Add native RabbitMQ connectors#207
danghoangnhan wants to merge 13 commits intopathwaycom:mainfrom
danghoangnhan:rabbitmq-connector

Conversation

@danghoangnhan
Copy link
Copy Markdown

@danghoangnhan danghoangnhan commented Mar 28, 2026

Summary

  • Add native RabbitMQ Streams connectors (pw.io.rabbitmq.read / pw.io.rabbitmq.write) implemented in the Rust engine using the rabbitmq-stream-client crate
  • Support JSON, plaintext, and raw formats with TLS, message keys via AMQP 1.0 application properties, metadata, and parallel readers
  • Include pw.io.rabbitmq.simple_read convenience method for quick setup
  • Add integration tests and a full ETL example (RabbitMQ → Pathway → PostgreSQL)

Closes #163

Test plan

  • Integration tests in integration_tests/kafka/test_rabbitmq.py cover read/write roundtrips, JSON/plaintext/raw formats, message keys, headers, metadata, and static mode
  • End-to-end ETL example verified: producer publishes AMQP messages → Pathway reads, validates, transforms, joins → writes enriched data to PostgreSQL
  • CI pipeline

danghoangnhan and others added 5 commits March 14, 2026 22:25
Replace MSSQL connector with RabbitMQ stream connector supporting
both input and output operations. Includes Rust connector implementation,
Python bindings, integration tests, and an ETL example project.
… framing

- Add TLS parameters to DataStorage for RabbitMQ connections
- Update rstream Producer API (Producer() + start() instead of Producer.create())
- Send AMQP 1.0 framed messages from producer for compatibility with Rust consumer
- Add PYTHONUNBUFFERED to producer Dockerfile
- Remap postgres port to avoid conflicts
@zxqfd555
Copy link
Copy Markdown
Collaborator

zxqfd555 commented Apr 7, 2026

Hello @danghoangnhan,
Thank you for your contribution into Pathway framework!
Currently, the PR has merge conflicts. Could you please resolve them? After that, given the size of the PR, we'll merge it into the separate branch, from where I'll integrate it in our regular integration testing processes, etc.

@danghoangnhan
Copy link
Copy Markdown
Author

danghoangnhan commented Apr 8, 2026

Hi @zxqfd555 , thanks for reviewing! I've resolved all the merge conflicts with the latest main branch. All CI checks are passing now .

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.

Add connectors for RabbitMQ

2 participants