temporal workflow 列表 关键代码
所属分类 temporal
浏览量 679
temporal/service/frontend/workflowHandler.go
ListOpenWorkflowExecutions
ListClosedWorkflowExecutions
ListWorkflowExecutions
temporal/common/persistence/visibility/manager/visibility_manager.go
ListOpenWorkflowExecutions
ListClosedWorkflowExecutions
ListWorkflowExecutions
temporal/common/persistence/visibility/visibility_manager_impl.go
type (
// visibilityManagerImpl is responsible for:
// - convert request (serialized some fields),
// - call underlying store (standard or advanced),
// - convert response.
visibilityManagerImpl struct {
store store.VisibilityStore
logger log.Logger
}
)
func (p *visibilityManagerImpl) ListOpenWorkflowExecutions(request *manager.ListWorkflowExecutionsRequest) (*manager.ListWorkflowExecutionsResponse, error) {
response, err := p.store.ListOpenWorkflowExecutions(request)
if err != nil {
return nil, err
}
return p.convertInternalListResponse(response)
}
func (p *visibilityManagerImpl) ListClosedWorkflowExecutions(request *manager.ListWorkflowExecutionsRequest) (*manager.ListWorkflowExecutionsResponse, error) {
response, err := p.store.ListClosedWorkflowExecutions(request)
if err != nil {
return nil, err
}
return p.convertInternalListResponse(response)
}
func (p *visibilityManagerImpl) ListWorkflowExecutions(request *manager.ListWorkflowExecutionsRequestV2) (*manager.ListWorkflowExecutionsResponse, error) {
response, err := p.store.ListWorkflowExecutions(request)
if err != nil {
return nil, err
}
return p.convertInternalListResponse(response)
}
temporal/common/persistence/visibility/store/standard/sql/visibility_store.go
temporal/common/persistence/sql/sqlplugin/postgresql/visibility.go
executions_visibility
namespace_id, workflow_id, run_id, start_time, execution_time, workflow_type_name, status, memo, encoding
templateOpenFieldNames = `workflow_id, run_id, start_time, execution_time, workflow_type_name, status, memo, encoding`
templateOpenSelect = `SELECT ` + templateOpenFieldNames + ` FROM executions_visibility WHERE status = 1 `
templateClosedSelect = `SELECT ` + templateOpenFieldNames + `, close_time, history_length FROM executions_visibility WHERE status != 1 `
templateGetOpenWorkflowExecutions = templateOpenSelect + templateConditions1
templateGetClosedWorkflowExecutions = templateClosedSelect + templateConditionsClosedWorkflow1
templateConditions1 = ` AND namespace_id = $1
AND start_time >= $2
AND start_time <= $3
AND ((run_id > $4 and start_time = $5) OR (start_time < $6))
ORDER BY start_time DESC, run_id
LIMIT $7`
templateConditionsClosedWorkflow1 = ` AND namespace_id = $1
AND close_time >= $2
AND close_time <= $3
AND ((run_id > $4 and close_time = $5) OR (close_time < $6))
ORDER BY close_time DESC, run_id
LIMIT $7`
上一篇
下一篇
ssh端口转发
PostgreSQL DBA 常用SQL
temporal namespace 创建和更新关键代码
go 单引号 双引号 反引号
GO json 序列化与反序列化
protobuf3二进制数据转java对象