Skip to content

Data Table UI Breaks if a cell contains too much data #20377

@gusdleon

Description

@gusdleon

Describe the problem/error/question

testing the new data tables discovered that if a cell in a row contains too much text it will break the ui and make it responsive

What is the error message (if any)?

Please share your workflow/screenshots/recording

this is page 2 of the data tables ui (page 1 is broken because the cell with too much text), you can see the schema
Image

the problem is in columns with the type string in my case "notas"

the nodes involved are a http request node and a data table>update node

{
  "nodes": [
    {
      "parameters": {
        "url": "=https://<redacted>/descarga-pdf/quote/preview/id/{{ $json.numero }}",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "accept",
              "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7"
            },
            {
              "name": "accept-language",
              "value": "es-MX,es-419;q=0.9,es-US;q=0.8,es;q=0.7,en;q=0.6,da;q=0.5"
            },
            {
              "name": "cache-control",
              "value": "no-cache"
            },
            {
              "name": "pragma",
              "value": "no-cache"
            },
            {
              "name": "priority",
              "value": "u=0, i"
            },
            {
              "name": "referer",
              "value": "https://<redacted>/quoter/quote/preview/id/{{ $json.documentId }}"
            },
            {
              "name": "sec-ch-ua",
              "value": "\"Chromium\";v=\"140\", \"Not=A?Brand\";v=\"24\", \"Google Chrome\";v=\"140\""
            },
            {
              "name": "sec-ch-ua-mobile",
              "value": "?0"
            },
            {
              "name": "sec-ch-ua-platform",
              "value": "\"Linux\""
            },
            {
              "name": "sec-fetch-dest",
              "value": "document"
            },
            {
              "name": "sec-fetch-mode",
              "value": "navigate"
            },
            {
              "name": "sec-fetch-site",
              "value": "same-origin"
            },
            {
              "name": "sec-fetch-user",
              "value": "?1"
            },
            {
              "name": "upgrade-insecure-requests",
              "value": "1"
            },
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36"
            }
          ]
        },
        "options": {
          "response": {
            "response": {
              "fullResponse": true,
              "responseFormat": "file"
            }
          }
        }
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        960,
        1232
      ],
      "id": "a3d1b2af-577b-46f3-b4ac-12bcb6aa1855",
      "name": "descargaDeCoti",
      "retryOnFail": true,
      "maxTries": 2,
      "onError": "continueErrorOutput"
    },
    {
      "parameters": {
        "operation": "update",
        "dataTableId": {
          "__rl": true,
          "value": "73QEg30gzAR09T4r",
          "mode": "list",
          "cachedResultName": "cotis",
          "cachedResultUrl": "/projects/3cXFB45jVbKL964j/datatables/73QEg30gzAR09T4r"
        },
        "filters": {
          "conditions": [
            {
              "keyName": "numero",
              "keyValue": "={{ $('Update row(s)2').item.json.numero }}"
            }
          ]
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "usando": false,
            "intentado": true,
            "Notas": "={{ $json.error.message }}"
          },
          "matchingColumns": [],
          "schema": [
            {
              "id": "numero",
              "displayName": "numero",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "number",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "usando",
              "displayName": "usando",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "boolean",
              "readOnly": false,
              "removed": false
            },
            {
              "id": "cliente",
              "displayName": "cliente",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "intentado",
              "displayName": "intentado",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "boolean",
              "readOnly": false,
              "removed": false
            },
            {
              "id": "conCliente",
              "displayName": "conCliente",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "boolean",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "path",
              "displayName": "path",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "Notas",
              "displayName": "Notas",
              "required": false,
              "defaultMatch": false,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "type": "n8n-nodes-base.dataTable",
      "typeVersion": 1,
      "position": [
        1408,
        1328
      ],
      "id": "0994a357-03cd-4932-a7ea-805c59636de7",
      "name": "Update row(s)4"
    }
  ],
  "connections": {
    "descargaDeCoti": {
      "main": [
        [],
        [
          {
            "node": "Update row(s)4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update row(s)4": {
      "main": [
        []
      ]
    }
  },
  "pinData": {},
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "7a62c58cde81a3a9f2111e81bd1e3275de15f1f68f8aa1ac53d76839dc7d0a1d"
  }
}

i'm trying to download some pdf fromba magento store and if the server return an error 404 the message for some reason includes the whole html of the 404 page, that in reality is the the http request node puting the whole body in the message in difference with a status 200
Image

finally this is is the data table ui broken because of that cell with almost 2mb of text
row 1 "Notas" seems to be empty and rows 2 to 6 are hidden debind that block

Image entering the cell to edit shows the contents and the hidden rows Image at the cost of the whole tab Image

Share the output returned by the last node

Debug info

core

  • n8nVersion: 1.113.3
  • platform: docker (self-hosted)
  • nodeJsVersion: 22.19.0
  • nodeEnv: production
  • database: sqlite
  • executionMode: regular
  • concurrency: -1
  • license: enterprise (production)

storage

  • success: all
  • error: all
  • progress: false
  • manual: true
  • binaryMode: memory

pruning

  • enabled: true
  • maxAge: 24 hours
  • maxCount: 10000 executions

client

  • userAgent: mozilla/5.0 (x11; linux x86_64) applewebkit/537.36 (khtml, like gecko) chrome/140.0.0.0 safari/537.36
  • isTouchDevice: false

Generated at: 2025-10-04T03:17:41.949Z}

Metadata

Metadata

Assignees

No one assigned

    Labels

    in linearIssue or PR has been created in Linear for internal review

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions