I experience the double entry in my MySQL database as well and it might not be related to your issue here, because I am using OH persistence to write into my mariaDB.
However one thing came to my mind:
I have defined in my persistence file, that each single item (*) should be stored on changes and should be restored at startup.
I did this because i wanted the Groups‘ state to be stored and not just the items within the group (G_Lights*).
Does this potentially cause OH to store twice?
One for the single entry * and one for he same item included in the Group?