Basically that's the question - I wonder if
set_transient() overwrites/updates a transient option with the same key?
I would concur with Jorge on the deletion first - I was having issues with
set_transient trying to "overwrite" the same transient. The
set_transient function was updating it, but the return value was false, not true.
A call to
delete_transient with its name just before
set_transient solved my issues and
set_transient would always return true.