Jonathan Nunes
07/04/2025, 12:21 PMEdgar Ramírez (Arch.dev)
07/04/2025, 5:56 PMJonathan Nunes
07/04/2025, 6:16 PMKhoa Nguyen
08/28/2025, 5:03 AMprocess_activate_version_messages
config to become False, i.e.
- name: target-redshift
variant: ticketswap
executable: target-redshift
pip_url: git+<https://github.com/TicketSwap/target-redshift.git@v0.2.2>
config:
add_metadata_columns: false
process_activate_version_messages: false
Long story short, Ticketswap is not fully-compatible to sqlalchemy because Redshift sqlalchemy is unmaintained
• I guess this reason forces the author to implement using redshift-connector package instead, making the target Redshift is not compatible with SQLConnector.prepare_*
interface which isn't required to pass cursor
object.
◦ It would be great if the SDK can support such case without sqlalchemy 🤔 – i.e. Redshift DBT adapter use redshift-connector directly and similar for other adapters snowflake, postgres, etc
◦ In fact, RedshiftConnector.prepare_*
overrides and copying the same parent method content with a single line change at the bottom of the method to use cursor instead
• After reading the code from bottom to top, I found that knob we could turn off to avoid TS invokes activate_version
method in TargetBase._process_activate_version_message
• Let me find time to write an issue and contribute activate version to TS, for now we can just turn it off first if you don't need ACTIVATE_VERSION 👍