chore(orchestration): remote joiner query planner (#13364)
What: - Added query planning to the Remote Joiner, enabling phased and parallel execution of data aggregation. - Replaced object deletes with non-enumerable property hiding to improve performance.
This commit is contained in:
committed by
GitHub
parent
b7fef5b7ef
commit
bd571aca82
@@ -296,6 +296,24 @@ export class RemoteQuery {
|
||||
}
|
||||
}
|
||||
|
||||
return this.executeFetchRequest({
|
||||
expand,
|
||||
keyField,
|
||||
ids,
|
||||
relationship,
|
||||
})
|
||||
}
|
||||
|
||||
private async executeFetchRequest(params: {
|
||||
expand: RemoteExpandProperty
|
||||
keyField: string
|
||||
ids?: (unknown | unknown[])[]
|
||||
relationship?: JoinerRelationship
|
||||
}): Promise<{
|
||||
data: unknown[] | { [path: string]: unknown }
|
||||
path?: string
|
||||
}> {
|
||||
const { expand, keyField, ids, relationship } = params
|
||||
const serviceConfig = expand.serviceConfig
|
||||
const service = this.modulesMap.get(serviceConfig.serviceName)!
|
||||
|
||||
|
||||
Reference in New Issue
Block a user