Steps to reproduce:
Precondition: MySQL database
- Import the host: mysql_lld_master.yaml
(Note: this import file is for 8.0 version) - Start the server, and execute the LLD
- Check the discovered items, for example, discovered script item:
SELECT LENGTH(params), CHAR_LENGTH(params) FROM items WHERE key_='m1.script[a]';
- Execute the LLD again, and check the server's logs
Result:
On step 2 the items are discovered with no LLD rule error, but params is silently truncated to fit items.params (text, 65535 bytes):
LENGTH(params) CHAR_LENGTH(params) 65532 16383
LLD update (step #4) - fails with query failed error in the log.
[Z3005] query failed: [1406] Data too long for column 'params' at row 1 [update items set params='return '𝕏.....
Also note, that discovered telemetry query item is broken on the frontend in such scenario. See screenshot:
![]()
Note: seems that issue is present for
- Items: params, description, posts, headers, query
- Triggers: description
- Host: macros description, value, SNMP interface parameters
Expected:
A discovered value that doesn't fit its DB field should be rejected during discovery, and LLD rule should display the correct error, why the item was not created.