I spoke too soon. There is an additional layer of logic which I skipped to mention, but the config file gets the last say on retires in REFramework and not the queue settings.
You can refer to the RetryCurrentTransaction in the REFramework and its inputs and outputs.
Further both QueueRetry and io_RetryNumber are sent to RetryCurrentTransaction.xaml
First checks if the Config max retry is larger than 0
Convert.ToInt32(in_Config("MaxRetryNumber"))>0 if yes
Then it checks
io_RetryNumber >= Convert.ToInt32(in_Config("MaxRetryNumber"))
Only if the previous check failed, i.e. io_RetryNumber is lesser than MaxRetryNumber will the queue settings end up incrementing io_RetryNumber with 1
So coming back to your question. Config values trigger all the main retry logic in REFramework.
If you want queue retry setting to be the main retry logic, you have to set MaxRetryNumber = 0 in config.xlsx. This is also shown in the description.
You can sure decide which one you want to use (we generally ignore the queue settings)
If you choose Orchestrator Queue Setting = x retries, then remember to set config —>MaxRetryNumber = 0
If you choose config file to set MaxRetryNumber, just ignore the Queue Setting for retries, it will be ignored anyways in REFramework.
Hope this clears your doubt. I know its a lot to take in, but you can refer the screenshots.