Merge pull request #1972 from murgatroid99/grpc-js-xds_no_missing_names_handling

grpc-js-xds: Remove LDS and CDS code for removing RDS and EDS entries
This commit is contained in:
Michael Lumish 2021-11-18 14:46:00 -08:00 committed by GitHub
commit db39ba245c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 0 additions and 39 deletions

View File

@ -149,14 +149,9 @@ export class CdsState implements XdsStreamState<Cluster__Output> {
}
this.latestResponses = validResponses;
this.latestIsV2 = isV2;
const allEdsServiceNames: Set<string> = new Set<string>();
const allClusterNames: Set<string> = new Set<string>();
for (const message of validResponses) {
allClusterNames.add(message.name);
const edsServiceName = message.eds_cluster_config?.service_name ?? '';
allEdsServiceNames.add(
edsServiceName === '' ? message.name : edsServiceName
);
const watchers = this.watchers.get(message.name) ?? [];
for (const watcher of watchers) {
watcher.onValidUpdate(message, isV2);
@ -164,7 +159,6 @@ export class CdsState implements XdsStreamState<Cluster__Output> {
}
trace('Received CDS updates for cluster names ' + Array.from(allClusterNames));
this.handleMissingNames(allClusterNames);
this.edsState.handleMissingNames(allEdsServiceNames);
return errorMessage;
}

View File

@ -128,23 +128,6 @@ export class EdsState implements XdsStreamState<ClusterLoadAssignment__Output> {
return true;
}
/**
* Given a list of edsServiceNames (which may actually be the cluster name),
* for each watcher watching a name not on the list, call that watcher's
* onResourceDoesNotExist method.
* @param allClusterNames
*/
handleMissingNames(allEdsServiceNames: Set<string>) {
for (const [edsServiceName, watcherList] of this.watchers.entries()) {
if (!allEdsServiceNames.has(edsServiceName)) {
trace('Reporting EDS resource does not exist for edsServiceName ' + edsServiceName);
for (const watcher of watcherList) {
watcher.onResourceDoesNotExist();
}
}
}
}
handleResponses(responses: ClusterLoadAssignment__Output[], isV2: boolean) {
const validResponses: ClusterLoadAssignment__Output[] = [];
let errorMessage: string | null = null;

View File

@ -167,13 +167,8 @@ export class LdsState implements XdsStreamState<Listener__Output> {
this.latestResponses = validResponses;
this.latestIsV2 = isV2;
const allTargetNames = new Set<string>();
const allRouteConfigNames = new Set<string>();
for (const message of validResponses) {
allTargetNames.add(message.name);
const httpConnectionManager = decodeSingleResource(HTTP_CONNECTION_MANGER_TYPE_URL_V3, message.api_listener!.api_listener!.value);
if (httpConnectionManager.rds) {
allRouteConfigNames.add(httpConnectionManager.rds.route_config_name);
}
const watchers = this.watchers.get(message.name) ?? [];
for (const watcher of watchers) {
watcher.onValidUpdate(message, isV2);
@ -181,7 +176,6 @@ export class LdsState implements XdsStreamState<Listener__Output> {
}
trace('Received RDS response with route config names ' + Array.from(allTargetNames));
this.handleMissingNames(allTargetNames);
this.rdsState.handleMissingNames(allRouteConfigNames);
return errorMessage;
}

View File

@ -172,16 +172,6 @@ export class RdsState implements XdsStreamState<RouteConfiguration__Output> {
return true;
}
handleMissingNames(allRouteConfigNames: Set<string>) {
for (const [routeConfigName, watcherList] of this.watchers.entries()) {
if (!allRouteConfigNames.has(routeConfigName)) {
for (const watcher of watcherList) {
watcher.onResourceDoesNotExist();
}
}
}
}
handleResponses(responses: RouteConfiguration__Output[], isV2: boolean): string | null {
const validResponses: RouteConfiguration__Output[] = [];
let errorMessage: string | null = null;