It seems MaterializeMySQL doesn't support Decimal data type when doing replication.
pos += 2;
                    break;
                }
                default:
                    throw ReplicationError("ParseMetaData: Unhandled data type:" + std::to_string(typ), ErrorCodes::UNKNOWN_EXCEPTION);
            }
        }
    }
    void TableMapEvent::dump(std::ostream & out) const
    {
        header.dump(out);
        out << "Table ID: " << this->table_id << std::endl;
        out << "Flags: " << this->flags << std::endl;
        out << "Schema Len: " << std::to_string(this->schema_len) << std::endl;
        out << "Schema: " << this->schema << std::endl;
        out << "Table Len: " << std::to_string(this->table_len) << std::endl;
        out << "Table: " << this->table << std::endl;
        out << "Column Count: " << this->column_count << std::endl;
        for (auto i = 0U; i < column_count; i++)
        {
            out << "Column Type [" << i << "]: " << std::to_string(column_type[i]) << ", Meta: " << column_meta[i] << std::endl;
        }
        out << "Null Bitmap: " << this->null_bitmap << std::endl;
    }
    void RowsEvent::parseImpl(ReadBuffer & payload)
    {
        payload.readStrict(reinterpret_cast<char *>(&table_id), 6);
        payload.readStrict(reinterpret_cast<char *>(&flags), 2);
        
        payload.readStrict(reinterpret_cast<char *>(&extra_data_len), 2);