Error Due to Upstream Modification of Field Type in DM

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: dm 因上游修改字段类型报错

| username: Hacker007

Why does it still prompt this exception when the field type size is reduced? Shouldn’t this error code be prompted when the total size of the row exceeds 6M?

| username: Cabbager | Original post link

Is it version 6.1.0?
If so, there is a known issue:

| username: Hacker007 | Original post link

I know that a single row of data cannot exceed 6M, which will cause an error, but in this case, I am modifying the field type, not writing an excessively long field. This error is a bit strange.

| username: db_user | Original post link

I’m not sure about the version, but there are two possible directions to consider: one is that TiDB’s lossy changes might not be supported yet, and the other is that there might be data in the downstream TiDB that exceeds this length. You can execute this statement downstream to see if there are any errors.

| username: Hacker007 | Original post link

I have checked, and there is no data downstream that exceeds this length.

| username: db_user | Original post link

Will this change statement execute normally downstream, or will there be an error?

| username: Hacker007 | Original post link

No, the longest data does not exceed this size.

| username: Hacker007 | Original post link

Strangely, some tables can be modified successfully.

| username: db_user | Original post link

It should be that the length exceeded. You can calculate the length. This is max(), not max(length()). I understand that max() sorts based on ASCII, not based on length. Use max(length()) to see what the maximum length is.

| username: Hacker007 | Original post link

It hasn’t exceeded the threshold, and this string is so short, why is the length so long?

| username: db_user | Original post link

What is the error you encountered when executing DDL in TiDB? Could you provide the error message along with the logs from TiDB and TiKV during execution?

| username: Hacker007 | Original post link

tidb log
tikv seems to have no prompt

| username: db_user | Original post link

Oh, I see. It seems that the single row data in the transaction exceeds the limit. You can temporarily change the size of this parameter txn-entry-size-limit.

Increase it to 10M or larger and see if the error still occurs.

| username: system | Original post link

This topic was automatically closed 60 days after the last reply. No new replies are allowed.