Documentation ¶
Index ¶
- func ConvertSearchResultToVisibilityRecord(hit []interface{}, columnNames []string, logger log.Logger) *p.InternalVisibilityWorkflowExecutionInfo
- func SerializePageToken(token *PinotVisibilityPageToken) ([]byte, error)
- type GenericClient
- type IsRecordValidFilter
- type PinotClient
- type PinotVisibilityPageToken
- type SearchRequest
- type SearchResponse
- type VisibilityQueryValidator
- type VisibilityRecord
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertSearchResultToVisibilityRecord ¶
func ConvertSearchResultToVisibilityRecord(hit []interface{}, columnNames []string, logger log.Logger) *p.InternalVisibilityWorkflowExecutionInfo
func SerializePageToken ¶
func SerializePageToken(token *PinotVisibilityPageToken) ([]byte, error)
SerializePageToken return the token blob
Types ¶
type GenericClient ¶
type GenericClient interface { // Search API is only for supporting various List[Open/Closed]WorkflowExecutions(ByXyz). // Use SearchByQuery or ScanByQuery for generic purpose searching. Search(request *SearchRequest) (*SearchResponse, error) // CountByQuery is for returning the count of workflow executions that match the query CountByQuery(query string) (int64, error) GetTableName() string }
GenericClient is a generic interface for all versions of Pinot clients
func NewPinotClient ¶
func NewPinotClient(client *pinot.Connection, logger log.Logger, pinotConfig *config.PinotVisibilityConfig) GenericClient
type IsRecordValidFilter ¶
type IsRecordValidFilter func(rec *p.InternalVisibilityWorkflowExecutionInfo) bool
IsRecordValidFilter is a function to filter visibility records
type PinotClient ¶
type PinotClient struct {
// contains filtered or unexported fields
}
func (*PinotClient) CountByQuery ¶
func (c *PinotClient) CountByQuery(query string) (int64, error)
func (*PinotClient) GetTableName ¶
func (c *PinotClient) GetTableName() string
func (*PinotClient) Search ¶
func (c *PinotClient) Search(request *SearchRequest) (*SearchResponse, error)
type PinotVisibilityPageToken ¶
type PinotVisibilityPageToken struct {
From int
}
PinotVisibilityPageToken holds the paging token for Pinot
func DeserializePageToken ¶
func DeserializePageToken(data []byte) (*PinotVisibilityPageToken, error)
DeserializePageToken return the structural token
func GetNextPageToken ¶
func GetNextPageToken(token []byte) (*PinotVisibilityPageToken, error)
GetNextPageToken returns the structural token with nil handling
type SearchRequest ¶
type SearchRequest struct { Query string IsOpen bool Filter IsRecordValidFilter MaxResultWindow int ListRequest *p.InternalListWorkflowExecutionsRequest }
SearchRequest is request for Search
type SearchResponse ¶
type SearchResponse = p.InternalListWorkflowExecutionsResponse
SearchResponse is a response to Search, SearchByQuery and ScanByQuery
type VisibilityQueryValidator ¶
type VisibilityQueryValidator struct {
// contains filtered or unexported fields
}
VisibilityQueryValidator for sql query validation
func NewPinotQueryValidator ¶
func NewPinotQueryValidator(validSearchAttributes map[string]interface{}) *VisibilityQueryValidator
NewPinotQueryValidator create VisibilityQueryValidator
func (*VisibilityQueryValidator) ValidateQuery ¶
func (qv *VisibilityQueryValidator) ValidateQuery(whereClause string) (string, error)
ValidateQuery validates that search attributes in the query and returns modified query.
type VisibilityRecord ¶
type VisibilityRecord struct { WorkflowID string RunID string WorkflowType string DomainID string StartTime int64 ExecutionTime int64 CloseTime int64 CloseStatus int HistoryLength int64 TaskList string IsCron bool NumClusters int16 UpdateTime int64 ShardID int16 }
VisibilityRecord is a struct of doc for deserialization this is different from InternalVisibilityWorkflowExecutionInfo use this to deserialize the systemKeyMap from Pinot response