It seems MaterializeMySQL doesn't support Decimal data type when doing replication.
#if !defined(ARCADIA_BUILD)
#    include "config_core.h"
#endif
#if USE_MYSQL
#    include <vector>
#    include <Columns/ColumnNullable.h>
#    include <Columns/ColumnString.h>
#    include <Columns/ColumnsNumber.h>
#    include <Columns/ColumnDecimal.h>
#    include <DataTypes/IDataType.h>
#    include <DataTypes/DataTypeNullable.h>
#    include <IO/ReadHelpers.h>
#    include <IO/WriteHelpers.h>
#    include <Common/assert_cast.h>
#    include <ext/range.h>
#    include "MySQLBlockInputStream.h"
namespace DB
{
namespace ErrorCodes
{
    extern const int NUMBER_OF_COLUMNS_DOESNT_MATCH;
}
MySQLBlockInputStream::MySQLBlockInputStream(