mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-17 01:56:46 +00:00
fix(editor): Add notice when user hits the limit for execution metadata item length (#12676)
This commit is contained in:
@@ -205,15 +205,12 @@ describe('Execution Metadata functions', () => {
|
||||
},
|
||||
} as IRunExecutionData;
|
||||
|
||||
setWorkflowExecutionMetadata(
|
||||
executionData,
|
||||
'test1',
|
||||
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab',
|
||||
);
|
||||
const longValue = 'a'.repeat(513);
|
||||
|
||||
setWorkflowExecutionMetadata(executionData, 'test1', longValue);
|
||||
|
||||
expect(metadata).toEqual({
|
||||
test1:
|
||||
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
|
||||
test1: longValue.slice(0, 512),
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -38,9 +38,9 @@ export function setWorkflowExecutionMetadata(
|
||||
Logger.error('Custom data key over 50 characters long. Truncating to 50 characters.');
|
||||
}
|
||||
if (val.length > 255) {
|
||||
Logger.error('Custom data value over 255 characters long. Truncating to 255 characters.');
|
||||
Logger.error('Custom data value over 512 characters long. Truncating to 512 characters.');
|
||||
}
|
||||
executionData.resultData.metadata[key.slice(0, 50)] = val.slice(0, 255);
|
||||
executionData.resultData.metadata[key.slice(0, 50)] = val.slice(0, 512);
|
||||
}
|
||||
|
||||
export function setAllWorkflowExecutionMetadata(
|
||||
|
||||
@@ -83,6 +83,22 @@ export class ExecutionData implements INodeType {
|
||||
],
|
||||
},
|
||||
],
|
||||
hints: [
|
||||
{
|
||||
type: 'warning',
|
||||
message: 'Some keys are longer than 50 characters. They will be truncated.',
|
||||
displayCondition: '={{ $parameter.dataToSave.values.some((x) => x.key.length > 50) }}',
|
||||
whenToDisplay: 'beforeExecution',
|
||||
location: 'outputPane',
|
||||
},
|
||||
{
|
||||
type: 'warning',
|
||||
message: 'Some values are longer than 512 characters. They will be truncated.',
|
||||
displayCondition: '={{ $parameter.dataToSave.values.some((x) => x.value.length > 512) }}',
|
||||
whenToDisplay: 'beforeExecution',
|
||||
location: 'outputPane',
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
|
||||
|
||||
Reference in New Issue
Block a user