MCPcopy Create free account
hub / github.com/bytebase/bytebase / newOmniQuerySpanExtractor

Function newOmniQuerySpanExtractor

backend/plugin/parser/pg/query_span_omni.go:66–80  ·  view source on GitHub ↗

newOmniQuerySpanExtractor creates a new omni-based query span extractor.

(defaultDatabase string, searchPath []string, gCtx base.GetQuerySpanContext)

Source from the content-addressed store, hash-verified

64
65// newOmniQuerySpanExtractor creates a new omni-based query span extractor.
66func newOmniQuerySpanExtractor(defaultDatabase string, searchPath []string, gCtx base.GetQuerySpanContext) *omniQuerySpanExtractor {
67 if len(searchPath) == 0 {
68 searchPath = []string{"public"}
69 }
70 return &omniQuerySpanExtractor{
71 defaultDatabase: defaultDatabase,
72 searchPath: searchPath,
73 gCtx: gCtx,
74 metaCache: make(map[string]*model.DatabaseMetadata),
75 funcBodyCache: make(map[uint32]*funcBodyAnalysis),
76 funcOrigDefs: make(map[string]string),
77 funcSourceColumns: make(base.SourceColumnSet),
78 funcPredicateColumns: make(base.SourceColumnSet),
79 }
80}
81
82// getDatabaseMetadata returns cached database metadata, fetching it if not yet cached.
83func (e *omniQuerySpanExtractor) getDatabaseMetadata(database string) (*model.DatabaseMetadata, error) {

Calls

no outgoing calls