Apache hive MSCK REPAIR TABLE nova partição não adicionada

Eu sou novo no Apache Hive. Enquanto trabalho na partição de tabela externa, se eu adicionar uma nova partição diretamente ao HDFS, a nova partição não será adicionada após a execução da tabela MSCK REPAIR. Abaixo estão os códigos que tentei,

- criando tabela externa

hive> create external table factory(name string, empid int, age int) partitioned by(region string)  
    > row format delimited fields terminated by ','; 

- Informações detalhadas da tabela

Location:  hdfs://localhost.localdomain:8020/user/hive/warehouse/factory     
Table Type:             EXTERNAL_TABLE           
Table Parameters:        
    EXTERNAL                TRUE                
    transient_lastDdlTime   1438579844  

- criando diretório no HDFS para carregar dados para a fábrica de tabelas

[cloudera@localhost ~]$ hadoop fs -mkdir 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory1'
[cloudera@localhost ~]$ hadoop fs -mkdir 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory2'

- dados da tabela

cat factory1.txt
emp1,500,40
emp2,501,45
emp3,502,50

cat factory2.txt
EMP10,200,25
EMP11,201,27
EMP12,202,30

- copiando do local para o HDFS

[cloudera@localhost ~]$ hadoop fs -copyFromLocal '/home/cloudera/factory1.txt' 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory1'
[cloudera@localhost ~]$ hadoop fs -copyFromLocal '/home/cloudera/factory2.txt' 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory2'

- Alterando a tabela para atualizar no metastore

hive> alter table factory add partition(region='southregion') location '/user/hive/testing/testing1/factory2';
hive> alter table factory add partition(region='northregion') location '/user/hive/testing/testing1/factory1';            
hive> select * from factory;                                                                      
OK
emp1    500 40  northregion
emp2    501 45  northregion
emp3    502 50  northregion
EMP10   200 25  southregion
EMP11   201 27  southregion
EMP12   202 30  southregion

Agora criei um novo arquivo factory3.txt para adicionar como nova partição para a tabela de fábrica

cat factory3.txt
user1,100,25
user2,101,27
user3,102,30

- criando o caminho e copiando dados da tabela

[cloudera@localhost ~]$ hadoop fs -mkdir 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory2'
[cloudera@localhost ~]$ hadoop fs -copyFromLocal '/home/cloudera/factory3.txt' 'hdfs://localhost.localdomain:8020/user/hive/testing/testing1/factory3'

agora executei a consulta abaixo para atualizar o metastore para a nova partição adicionada

MSCK REPAIR TABLE factory;

Agora a tabela não está fornecendo o novo conteúdo da partição do arquivo factory3. Posso saber onde estou cometendo um erro ao adicionar uma partição para a fábrica de tabelas?

enquanto que, se eu executar o comando alter, ele estará mostrando os novos dados da partição.

hive> alter table f,actory add partition(region='eastregion') location '/user/hive/testing/testing1/factory3';

Posso saber por que o comando MSCK REPAIR TABLE não está funcionando?

questionAnswers(2)

yourAnswerToTheQuestion