Whats the difference between history and visibility record?

I was going through this document https://docs.temporal.io/docs/learn-archival
and was struck a bit as i could not understand what visibility record means. can some one please clarify.

Did not find details in glossary too https://docs.temporal.io/docs/learn-glossary

2 Likes

History records actually represent the stateful transitions made by your workflow. This is basically the core unit of Temporal and is what allows the system to provide high levels of reliability and replayability.

Visibility records on the other hand do not represent the history of state mutations but rather metadata about the execution of the workflow itself. There are default attributes that are available to query from the visibility layer such as number of running workflow executions, number of stopped workflows etc. You can also add custom “searchable attributes” by taking advantage of ElasticSearch which enable you to query against custom properties inside running workflows.

The docs definitely are lacking in that department. I’ll make sure we improve that area.

4 Likes

thanks @ryland for clarifying. :smile:

1 Like

So what is a visiblity record?

can someone tell me what that is?

This is a record returned by the list API: WorkflowExecutionInfo. It represents a single workflow view in the list view in the UI.

our company needs to request visibility records. Can this be done?

Yes, using the ListWorkflowExecutions API.