Description
The client version is now available on the server side when index maintenance is being performed. Given that this information is available, we should conditionally retry on the server depending on the client version (instead of relying on the operator to manually update the config after clients have been upgraded).
With PHOENIX-4613, the client version has been threaded through to the IndexCommitter.write() method. All that's left to do is:
- Always set the config on the server side to have no HBase retries.
- Add catch of IOException and conditionally call the retrying exception handler code based on clientVersion < 4.14.0 in TrackingParallelWriterIndexCommitter and ParallelWriterIndexCommitter.