sarah_bioni
ServiceNow Employee

Recently, I faced an issue where newly created dictionary fields were saving with the Label field empty.

 

Root Cause: MySQL Static Row Size Limitation

ServiceNow tables that use a Table‑Per‑Hierarchy structure accumulate the size of all columns across the hierarchy. When the combined size of all varchar fields becomes too large, the underlying MySQL storage engine reaches its static row size limit.
When this limit is exceeded, dictionary operations such as creating fields or modifying existing ones silently fail at the database layer. As a result, metadata may save partially, leading to symptoms like “Label disappearing”.

This is not a ServiceNow defect, but a known MySQL limitation.

 

How to Fix It

To reduce the static row size and allow new fields to be created, there are two recommended approaches:

 

1. Remove Unused Columns

If the table contains old or unnecessary fields, removing them immediately reduces the row size.

 

2. Convert Large Varchar Fields to TEXT

Increasing a varchar length to 256 or higher makes ServiceNow automatically convert the column to a TEXT type.
Reviewing column sizes and converting large varchar fields to TEXT can restore normal dictionary behavior.

Version history
Last update:
3 hours ago
Updated by:
Contributors