AzureMonitor: Fix crash from infinite render loop (#37924)

pull/37959/head
Josh Hunt 4 years ago committed by GitHub
parent 697ac937c6
commit 368da73ac4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 13
      public/app/plugins/datasource/grafana-azure-monitor-datasource/components/MetricsQueryEditor/dataHooks.ts

@ -69,10 +69,15 @@ export const useSubscriptions: DataHook = (query, datasource, onChange, setError
);
useEffect(() => {
if (!subscription && defaultSubscription && hasOption(subscriptionOptions, defaultSubscription)) {
onChange(setSubscriptionID(query, defaultSubscription));
} else if ((!subscription && subscriptionOptions.length) || subscriptionOptions.length === 1) {
onChange(setSubscriptionID(query, subscriptionOptions[0].value));
// Return early if subscriptions havent loaded, or if the query already has a subscription
if (!subscriptionOptions.length || (subscription && hasOption(subscriptionOptions, subscription))) {
return;
}
const defaultSub = defaultSubscription || subscriptionOptions[0].value;
if (!subscription && defaultSub && hasOption(subscriptionOptions, defaultSub)) {
onChange(setSubscriptionID(query, defaultSub));
}
}, [subscriptionOptions, query, subscription, defaultSubscription, onChange]);

Loading…
Cancel
Save