# Copyright 2023 PingCAP, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Preparation.
=> DBGInvoke __init_fail_point()

mysql> drop table if exists test.test
mysql> create table test.test (col1 decimal(65, 10), col2 decimal(20, 20), col3 decimal(65, 0))
mysql> insert into test.test values(0.1,0.1,1),(1.0,0.1,1),(0,0,0),(null,null,null),(99.9,0.99,99)

mysql> alter table test.test set tiflash replica 1

func> wait_table test test

mysql> use test; set tidb_allow_mpp=1;set tidb_enforce_mpp=1; set tidb_isolation_read_engines='tiflash'; select t1.col1, t2.col2 from test t1 join test t2 on t1.col1 = t2.col2;
+--------------+------------------------+
| col1         | col2                   |
+--------------+------------------------+
| 0.1000000000 | 0.10000000000000000000 |
| 0.1000000000 | 0.10000000000000000000 |
| 0.0000000000 | 0.00000000000000000000 |
+--------------+------------------------+

mysql> use test; set tidb_allow_mpp=1;set tidb_enforce_mpp=1; set tidb_isolation_read_engines='tiflash'; select t1.col1, t2.col3 from test t1 join test t2 on t1.col1 = t2.col3;
+--------------+------+
| col1         | col3 |
+--------------+------+
| 1.0000000000 |    1 |
| 1.0000000000 |    1 |
| 0.0000000000 |    0 |
+--------------+------+

# Clean up.
mysql> drop table if exists test.test
