[v10.0.x] PanelQueryRunner: Ensure same transformations before reusing lastProcessedFrames (#68499)
PanelQueryRunner: Ensure same transformations before reusing lastProcessedFrames (#68498)
(cherry picked from commit 8ba1762618)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
This commit is contained in:
co-authored by
Leon Sorokin
parent
797298555c
commit
4d1a71f589
@@ -95,6 +95,7 @@ export class PanelQueryRunner {
|
||||
let lastFieldConfig: ApplyFieldOverrideOptions | undefined = undefined;
|
||||
let lastProcessedFrames: DataFrame[] = [];
|
||||
let lastRawFrames: DataFrame[] = [];
|
||||
let lastTransformations: DataTransformerConfig[] | undefined;
|
||||
let isFirstPacket = true;
|
||||
let lastConfigRev = -1;
|
||||
|
||||
@@ -110,12 +111,18 @@ export class PanelQueryRunner {
|
||||
return this.subject.pipe(
|
||||
mergeMap((data: PanelData) => {
|
||||
let fieldConfig = this.dataConfigSource.getFieldOverrideOptions();
|
||||
let transformations = this.dataConfigSource.getTransformations();
|
||||
|
||||
if (data.series === lastRawFrames && lastFieldConfig?.fieldConfig === fieldConfig?.fieldConfig) {
|
||||
if (
|
||||
data.series === lastRawFrames &&
|
||||
lastFieldConfig?.fieldConfig === fieldConfig?.fieldConfig &&
|
||||
lastTransformations === transformations
|
||||
) {
|
||||
return of({ ...data, structureRev, series: lastProcessedFrames });
|
||||
}
|
||||
|
||||
lastFieldConfig = fieldConfig;
|
||||
lastTransformations = transformations;
|
||||
lastRawFrames = data.series;
|
||||
let dataWithTransforms = of(data);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user