It seems MaterializeMySQL doesn't support Decimal data type when doing replication.
if (compressed_integers != 0)
                        {
                            Int64 val = 0;
                            UInt8 to_read = compressed_byte_map[compressed_integers];
                            readBigEndianStrict(reader, reinterpret_cast<char *>(&val), to_read);
                            format += std::to_string(val);
                        }
                        for (auto k = 0U; k < uncompressed_integers; k++)
                        {
                            UInt32 val = 0;
                            readBigEndianStrict(reader, reinterpret_cast<char *>(&val), 4);
                            format += std::to_string(val);
                        }
                        format += ".";
                        for (auto k = 0U; k < uncompressed_decimals; k++)
                        {
                            UInt32 val = 0;
                            reader.readStrict(reinterpret_cast<char *>(&val), 4);
                            format += std::to_string(val);
                        }
                        
                        if (compressed_decimals != 0)
                        {
                            Int64 val = 0;
                            String compressed_buff;
                            UInt8 to_read = compressed_byte_map[compressed_decimals];
                            switch (to_read)
                            {
                                case 1: {