@@ -2895,7 +2895,7 @@ func TestRestoreMapping(t *testing.T) {
28952895
28962896 env .queryWithNoError (r , "CREATE DATABASE `database-1`" )
28972897 env .queryWithNoError (r , "CREATE TABLE `database-1`.t1 (dt DateTime, v UInt64) ENGINE=ReplicatedMergeTree('/clickhouse/tables/database-1/t1','{replica}') PARTITION BY v % 10 ORDER BY dt" )
2898- env .queryWithNoError (r , "CREATE TABLE `database-1`.d1 AS `database-1`.t1 ENGINE=Distributed('{cluster}', 'database-1', 't1')" )
2898+ env .queryWithNoError (r , "CREATE TABLE `database-1`.`t-d1` AS `database-1`.t1 ENGINE=Distributed('{cluster}', 'database-1', 't1')" )
28992899 if compareVersion (os .Getenv ("CLICKHOUSE_VERSION" ), "22.3" ) < 0 {
29002900 env .queryWithNoError (r , "CREATE TABLE `database-1`.t2 AS `database-1`.t1 ENGINE=ReplicatedMergeTree('/clickhouse/tables/database-1/t2','{replica}') PARTITION BY toYYYYMM(dt) ORDER BY dt" )
29012901 } else {
@@ -2909,26 +2909,36 @@ func TestRestoreMapping(t *testing.T) {
29092909 env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "create" , testBackupName )
29102910
29112911 log .Debug ().Msg ("Restore schema" )
2912- env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--schema" , "--rm" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,d1:d2,mv1:mv2,v1:v2" , "--tables" , "database-1.*" , testBackupName )
2912+ env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--schema" , "--rm" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,t- d1:t- d2,mv1:mv2,v1:v2" , "--tables" , "database-1.*" , testBackupName )
29132913
29142914 log .Debug ().Msg ("Check result database-1" )
29152915 env .queryWithNoError (r , "INSERT INTO `database-1`.t1 SELECT '2023-01-01 00:00:00', number FROM numbers(10)" )
29162916 env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.t1" )
29172917 env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.t2" )
2918- env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.d1 " )
2918+ env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.`t-d1` " )
29192919 env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.mv1" )
29202920 env .checkCount (r , 1 , 20 , "SELECT count() FROM `database-1`.v1" )
29212921
29222922 log .Debug ().Msg ("Drop database-1" )
29232923 r .NoError (env .dropDatabase ("database-1" , false ))
29242924
2925- log .Debug ().Msg ("Restore data" )
2926- env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--data" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,d1:d2,mv1:mv2,v1:v2" , "--tables" , "database-1.*" , testBackupName )
2925+ log .Debug ().Msg ("Restore data only --restore-database-mappings" )
2926+ env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--rm" , "--restore-database-mapping" , "database-1:database-2" , testBackupName )
2927+
2928+ log .Debug ().Msg ("Check result database-2 without table mapping" )
2929+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.t1" )
2930+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.t2" )
2931+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.`t-d1`" )
2932+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.mv1" )
2933+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.v1" )
2934+
2935+ log .Debug ().Msg ("Restore data only --restore-table-mappings+--restore-database-mappings" )
2936+ env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--data" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,t-d1:t-d2,mv1:mv2,v1:v2" , "--tables" , "database-1.*" , testBackupName )
29272937
29282938 log .Debug ().Msg ("Check result database-2" )
29292939 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.t3" )
29302940 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.t4" )
2931- env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.d2 " )
2941+ env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.`t-d2` " )
29322942 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.mv2" )
29332943 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.v2" )
29342944
@@ -2939,14 +2949,14 @@ func TestRestoreMapping(t *testing.T) {
29392949 r .NoError (env .dropDatabase ("database-2" , false ))
29402950
29412951 log .Debug ().Msg ("Restore data with partitions" )
2942- env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,d1:d2,mv1:mv2,v1:v2" , "--partitions" , "3" , "--partitions" , "database-1.t2:202201" , "--tables" , "database-1.*" , testBackupName )
2952+ env .DockerExecNoError (r , "clickhouse-backup" , "clickhouse-backup" , "-c" , "/etc/clickhouse-backup/config-database-mapping.yml" , "restore" , "--restore-database-mapping" , "database-1:database-2" , "--restore-table-mapping" , "t1:t3,t2:t4,t- d1:t- d2,mv1:mv2,v1:v2" , "--partitions" , "3" , "--partitions" , "database-1.t2:202201" , "--tables" , "database-1.*" , testBackupName )
29432953
29442954 log .Debug ().Msg ("Check result database-2 after restore with partitions" )
29452955 // t1->t3 restored only 1 partition with name 3 partition with 1 rows
2946- // t1->t3 restored only 1 partition with name 3 partition with 10 rows
29472956 env .checkCount (r , 1 , 1 , "SELECT count() FROM `database-2`.t3" )
2957+ // t2->t4 restored only 1 partition with name 3 partition with 10 rows
29482958 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.t4" )
2949- env .checkCount (r , 1 , 1 , "SELECT count() FROM `database-2`.d2 " )
2959+ env .checkCount (r , 1 , 1 , "SELECT count() FROM `database-2`.`t-d2` " )
29502960 env .checkCount (r , 1 , 10 , "SELECT count() FROM `database-2`.mv2" )
29512961 env .checkCount (r , 1 , 1 , "SELECT count() FROM `database-2`.v2" )
29522962
0 commit comments