About the question returned after dubbo retry

after testing, I found that when using dubbo, if the A service a method calls the b method of the B service and
retries N times, the return of the b method obtained by the
a method is the Nth time or some time in the middle

.

now if method a calls method b to insert a data and returns true (or other results such as the total number of rows returned)
or failed false
due to timeout, retry
is actually successful
the first time, but the second and subsequent times due to database uniqueness check throw exception
, then method a gets an exception. Instead of successfully inserting true
, this should be quite common in microservice architectures, right?
how to deal with it in practice?

Apr.27,2021
MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1e810c1-46908.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1e810c1-46908.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?