I should point out that writing the same block (by natural key) twice just creates two different instances, with their own links, one of which could get confirmed and end up typically being referenced for filter queries. This is extremely rare but possible and fine. I was referring to the other even more unlikely (probably impossible for the node to produce) but also fine (for the database) scenario of a filter for the same block instance (same surrogate key) being written to one or both of the arraymaps.