MCPcopy Create free account
hub / github.com/subquery/subql / fetchFromTable

Function fetchFromTable

packages/query/src/graphql/plugins/GetMetadataPlugin.ts:135–158  ·  view source on GitHub ↗
(
  pgClient: Client,
  schemaName: string,
  chainId: string | undefined,
  useRowEst: boolean
)

Source from the content-addressed store, hash-verified

133let defaultMetadataName: string;
134
135export async function fetchFromTable(
136 pgClient: Client,
137 schemaName: string,
138 chainId: string | undefined,
139 useRowEst: boolean
140): Promise<MetaData> {
141 let metadataTableName: string;
142
143 if (!chainId) {
144 // return first metadata entry you find.
145 if (defaultMetadataName === undefined) {
146 const {rows} = await pgClient.query(
147 `SELECT table_name FROM information_schema.tables where table_schema='${schemaName}'`
148 );
149 const {table_name} = rows.find((obj: {table_name: string}) => matchMetadataTableName(obj.table_name));
150 defaultMetadataName = table_name;
151 }
152 metadataTableName = defaultMetadataName;
153 } else {
154 metadataTableName = getMetadataTableName(chainId);
155 }
156
157 return fetchMetadataFromTable(pgClient, schemaName, metadataTableName, useRowEst);
158}
159
160function metadataTableSearch(build: Build): boolean {
161 return !!(build.pgIntrospectionResultsByKind as PgIntrospectionResultsByKind).attribute.find((attr) =>

Callers 2

PgBlockHeightPluginFunction · 0.90

Calls 4

getMetadataTableNameFunction · 0.90
matchMetadataTableNameFunction · 0.85
fetchMetadataFromTableFunction · 0.85
findMethod · 0.65

Tested by

no test coverage detected