Skip to content

Add the operator_port_cache table #5969

Description

@Xiao-zhen-Liu

Task Summary

Part of #5882 (design: #5880; umbrella #5881).

Add the operator_port_cache table that records a materialized output port result so it can be reused across executions. Additive: nothing reads or writes it during execution yet, so it changes no behavior on its own.

Scope

  • A new table operator_port_cache, primary key (workflow_id, global_port_id, cache_key). It stores the cache key (hash), the serialized form it was computed from, the result's storage location, an optional row count, provenance (the source execution), and a database-managed updated-at timestamp. The foreign key to workflow is ON DELETE CASCADE.
  • Added to the schema file (sql/texera_ddl.sql) and as a Liquibase migration (sql/updates/26.sql) registered in sql/changelog.xml.

Why this is safe. The table starts empty and nothing reads or writes it during execution.

Notes. Generated jOOQ classes for the table are not committed; the change ships the .sql schema and migration and the build regenerates the rest. Adding to the schema file sends an automatic dev-list notification.

Depends on. None.

Out of scope. The read and write code and any execution-time use of the cache (#5885).

Task Type

  • Refactor / Cleanup
  • DevOps / Deployment / CI
  • Testing / QA
  • Documentation
  • Performance
  • Other

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions