Skip to content

Derivative with Connected Table listener not reacting to changes #1578

@oersted

Description

@oersted

Describe the bug

Derivatives listening to a Connected Table column fail to react to changes in any of their dependencies, even if the column that was changed was not a Connected Table column.

The logs of the Cloud Function show the following internal error:

TypeError: change.before.get(...).map is not a function
  at .updateLinks ( /workspace/src/propagates/index.js:22 )
  at undefined. ( /workspace/src/propagates/index.js:46 )
  at .Array.forEach
  at .propagate ( /workspace/src/propagates/index.js:46 )
  at undefined. ( /workspace/src/index.js:58 )
  at process.processTicksAndRejections ( node:internal/process/task_queues:95 )

I've also seen the same error with change.after.get, but less frequently.

The same Derivative does work correctly when running it manually (Evaluate cell or Evaluate All). It also works well when creating a new row (programmatically, with the requirements filled in), which makes sense it seems to be a bug with the code handling updates (change).

To Reproduce

Create a Derivative column that listens to a Connected Table column and try to manually update any column it listens to. The Derivative value will not update, no logs will be shown for that column, and the error shown above will appear in Google Cloud when looking at the Cloud Function.

Expected behavior
The Derivative should run properly whenever any Column it listens to changes.

Rowy Run version
Rowy Run v1.9.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions