temporal 重要表说明  
   
所属分类 temporal
浏览量 950
两个库
temporal  和 temporal_visibility
temporal 库
cluster_metadata_info
    metadata_partition   全局常量   const constMetadataPartition = 0
    cluster_name
    
cluster_membership
    membership_partition	全局常量  const constMembershipPartition = 0
    host_id	
    rpc_address	
    rpc_port	
    role	
    session_start	
    last_heartbeat	
    record_expiry
内一个server实例 定时发送心跳信息 更新 last_heartbeat
select * FROM cluster_membership order by last_heartbeat desc
  
namespaces
    partition_id  全局常量  const partitionID = 54321
    id	
    name
shards
    shard_id	
    range_id
    data  
data信息
{
    "shardId": 3,
    "rangeId": 24,
    "owner": "127.0.0.1:7234",
    "replicationAckLevel": 0,
    "transferAckLevel": 25166117,
    "stolenSinceRenew": 0,
    "updateTime": "2022-04-26T05:18:37.007866Z",
    "timerAckLevelTime": "2022-04-26T03:33:35.010695Z",
    "namespaceNotificationVersion": 3,
    "clusterTransferAckLevel": {
        "active": 25166117
    },
    "clusterTimerAckLevel": {
        "active": "2022-04-26T03:33:35.010695Z"
    },
    "clusterReplicationLevel": {},
    "replicationDlqAckLevel": {},
    "visibilityAckLevel": 25166118
}
"owner": "127.0.0.1:7234"
History  管理工作流状态转换  端口 7234
task_queues
    range_hash
    task_queue_id
    range_id
    data
data数据
{
    "namespaceId": "32049b68-7872-4094-8e63-d0dd59896a83",
    "name": "/_sys/temporal-sys-tq-scanner-taskqueue-0/3",
    "taskType": "TASK_QUEUE_TYPE_ACTIVITY",
    "kind": "TASK_QUEUE_KIND_NORMAL",
    "ackLevel": 5700000,
    "lastUpdateTime": "2022-04-26T09:05:40.838948Z"
}
   
task_queue_id  二进制数据
func (m *sqlTaskManager) taskQueueIdAndHash(
	namespaceID primitives.UUID,
	name string,
	taskType enumspb.TaskQueueType,
) ([]byte, uint32) {
	id := m.taskQueueId(namespaceID, name, taskType)
	return id, farm.Fingerprint32(id)
}
func (m *sqlTaskManager) taskQueueId(
	namespaceID primitives.UUID,
	name string,
	taskType enumspb.TaskQueueType,
) []byte {
	idBytes := make([]byte, 0, 16+len(name)+1)
	idBytes = append(idBytes, namespaceID...)
	idBytes = append(idBytes, []byte(name)...)
	idBytes = append(idBytes, uint8(taskType))
	return idBytes
}
temporal_visibility 库 
executions_visibility   webui 工作流列表
  namespace_id	
  run_id	
  start_time	
  execution_time	
  workflow_id	
  workflow_type_name	
  status	
  close_time	
  history_length	
  memo	
  encoding	
  task_queue
 temporal list namespace 调试 堆栈信息 
 temporal worker 线程信息 及 轮询获取工作流关键代码  
 Temporal Server architecture  
 上一篇  
   
 下一篇  
 temporal 获取集群信息 关键代码 
 postgresql jdbc 驱动 ResultSet 取值 
 temporal 获取 namespace信息 关键代码和堆栈信息 
 Temporal Clusters 
 Go检查结构体是否实现了指定接口 
 temporal worker 线程信息 及 轮询获取工作流关键代码