fixed insert_or_update