Release Summary for 4.3.42
  Changes to 4.3 after version 4.3.41
  * [[4.3] fix send_file CTA and make file removal optional (#5941)  * fix send_file CTA and make file removal optional    * avoid deleting while still streaming the response body    * the callers to this function all handle empty list conditions already    * formatting    * fix spec](https://github.com/2600hz/kazoo/commit/84ca6f884ab8448a3d1032a601f7430de0936079) by bitbashing
  * [HELP-45578: if already unpublished dont change authority or re-unpublish (#5933)](https://github.com/2600hz/kazoo/commit/a4818837edb9fbcfb1bebc0fe0717edea12a0b6c) by karl anderson
  * [[4.3] HELP-44382: decrease 409s when saving accounts (#5930)  * [4.3] HELP-44382: decrease 409s when saving accounts    Due to changes in how account documents are saved (in the account db,  then copied to the &#039;accounts&#039; db), some systems were experiencing  increased incidences of 409 API errors when modifying the account doc  via `/v2/accounts/{ACCOUNT_ID}`.    Currently the only &quot;smoking gun&quot; for why some systems experienced this  elevated rate seems due to the Erlang scheduler&#039;s interleaving of  processes and the way the kzs_cache works when storing a cache entry.    Essentially the problem was distilled to the interplay of 3 processes,  A, B, and C:    A -&gt; Cache: flush doc  A -&gt; Couch: save rev X  B -&gt; Couch: get doc  Couch -&gt; B: got rev X  B -&gt; Cache: cache rev X  Couch -&gt; A: saved rev Y  C -&gt; Cache: get rev X  C -&gt; Couch: save rev X  Couch -&gt; C: 409    See core/kazoo_data/doc/help_44382.png    So the cache was being re-populated with the soon-to-be old revision  while the save to Couch was occurring.    To address this, after a successful save operation from Couch, kzs_doc  will then cache the new document. One caveat is that if an existing  doc is already cached, the revisions of the existing and new doc are  compared and the higher revision is stored in the cache.    Another issue that arose was if _rev is included in  kzd_accounts:update/3 and is old, and ensure_saved is true, a loop  will be started where the save will 409, updates re-applied to the  actual doc (including the old _rev) and a save will again 409 - rinse  and repeat.    * update caching of saves    * ignore return of set_default    * no div by 0](https://github.com/2600hz/kazoo/commit/55f27be4801f4853d60efd22a97333845a76c18e) by James Aimonetti
  * [PISTON-864 add new prompt for confirming a voicemail has been forwarded (#5935)  Playing prompt on newcall appears to still play](https://github.com/2600hz/kazoo/commit/d710cb18dbd83b34dbee289677fd3bfbcd6e011a) by Spencer Hutchinson
 -- 2600Hz Official <packages@2600hz.com>  Thu, 01 Aug 2019 11:52:34 PM +0000
