Why does this query produce an "Duplicate entry" error?

TRUNCATE parim_firm_tag_names;
INSERT INTO parim_firm_tag_names (firm_tag_name_value) 
    SELECT DISTINCT sona 
    FROM parim_marksona;

Error message:

SQL Error (1062): Duplicate entry '1-??????? ??????' for key 'firm_tag_name_value'

As you can see, firm_tag_name_value has an unique index, I use DISTINCT select and I'm truncating all existing data from tag_names.

What could produce this error?

Edit
Report