postgresqlamazon-web-servicesdockerkind

Drasi (Change data processing) not working as expected for "StoredProc" reaction


Source.yaml file:

apiVersion: v1
kind: Source
name: hello-world
spec:
  kind: PostgreSQL
  properties:
    host: mydb1.amazonaws.com
    user: meeran
    port: 5432
    ssl: false
    password: mypassword
    database: meerandb
    tables:
      - public.Message

Query.yaml file:

apiVersion: v1
kind: ContinuousQuery
name: hello-world-from
spec:
  mode: query
  sources:    
    subscriptions:
      - id: hello-world
  query: > 
    MATCH 
      (m:Message {Message: 'Hello World'})
    RETURN 
      m.MessageId AS MessageId,
      m.From AS MessageFrom

areaction.yaml file

apiVersion: v1
kind: Reaction
name: stored-proc
spec:
  kind: StoredProc
  queries:
    hello-world-from:
  properties:
    addedResultCommand: public.added_command(@MessageId, @MessageFrom)
    updatedResultCommand: public.updated_command(@MessageId, @MessageFrom)
    deletedResultCommand: public.deleted_command(@MessageId, @MessageFrom)
    databaseClient: pg
    databaseHostname: mydb1.amazonaws.com
    databasePort: 5432
    databaseUser: meeran
    databaseDbname: meerandb
    databasePassword: mypassword
    databaseSsl: false

The functionality working as expected when configuring Reaction as "Debug" Kind

Debug-reaction.yaml file

apiVersion: v1
kind: Reaction
name: hello-world-debug
spec:
  kind: Debug
  queries:
    hello-world-from:

After deleting the debug reaction and creating the new one with "StoredProc" reaction, the functionality breaking. I have provided error msg below

enter image description here

The above provided areaction.yaml file followed from Drasi documentation. I have created Stored procedure in the DB already. All of my attribute values in the yaml file are perfect.

Even If I manage to add the SqlCommand, and then its pointing issue in the next attribute (ex: databaseHostname).


Solution

  • Thanks for reaching out! I am Ruokun and I am one of the engineers on the Drasi team.

    The StoredProc reaction was recently reviewed and updated to use our Node Reaction SDK. However, this update wasn't included in the previous release (version 0.1.5, the one that you were you using earlier), so it was still relying on the outdated configuration settings. Sorry for any confusion as the docs were updated before we had a new Drasi release.

    We have just published a new release (version 0.1.6) for Drasi this afternoon. Please re-install the latest version of CLI using the CLI installation script (https://drasi.io/reference/command-line-interface/) and re-deploy Drasi to your Kubernetes cluster. You should be able to deploy the StoredProc Reaction now. Please do not hesitate to reach out to me if there are any additional questions.