When Hflush or Hsync APIs are called, a call is made to store backend to commit the data that was appended.
If the data size written by Hadoop app is small, i.e. data size :
- before any of HFlush/HSync call is made or
- between 2 HFlush/Hsync API calls
is less than write buffer size, 2 separate calls, one for append and another for flush is made,
Apps that do such small writes eventually end up with almost similar number of calls for flush and append.
This PR enables Flush to be piggybacked onto append call for such short write scenarios.
NOTE: The changes is guarded over a config, and is disabled by default until relevant supported changes is made available on all store production clusters.
New Config added: fs.azure.write.enableappendwithflush