anchor.diff:  [[v0.32.0]]
   == 0.32.0 (TBD)
   
  +icon:bullhorn[] Event Handling
  +
  +[quote]
  +____
  +
  +The event handling mechanism has been completely overhauled.
  +
  +*Changes*
  +
  +* Additional events have been added
  +* Event payload includes more information
  +* Java Models for events have been added
  +
  +*API*
  +
  +The API class `com.gentics.mesh.MeshEvent` was replaced by `com.gentics.mesh.core.rest.MeshEvent`.
  +
  +A detailed description of this feature can be found in our link:{{< relref "events.asciidoc" >}}[Event Documentation].
  +____
  +
  +icon:bullhorn[] Elasticsearch Handling
  +
  +[quote]
  +____
  +
  +The Elasticsearch integration has been overhauled.
  +
  +*Integration*
  +
  +Elasticsearch synchronization operations have been decoupled from regular write operations.
  +
  +This has two main effect. First regular write operations (e.g. Node Update, Node Create) will not block until the changed data has been synchronized with elasticsearch. This will result in higher overall write performance. Secondly changes will not be directly visible in Elasticsearch since write operations in Elasticsearch have been decoupled and will be executed asynchrously after a element in Gentics Mesh has been modified. Implementations which highly rely on Gentics Mesh being in sync with ES for each operation may need to be adapted.
  +
  +*Fixes*
  +
  +Various issues with the previous Elasticsearch synchronization mechanism have been adressed.
  +
  +* Deletion of nodes will now also update documents in the index which reference the deleted node
  +* Tag and Tag Family deletion will now correctly update referenced tags, tag families and nodes
  +
  +*Startup*
  +
  +Gentics Mesh will no longer wait for Elasticsearch during startup.
  +
  +*Resiliance*
  +
  +The resiliance for Elasticsearch server issues has been improved. Failed requests will automatically be retried. If too many issues occure Gentics Mesh will automatically invoke a index sync in order to recover from the issue. This sync will be retried until Elasticsearch becomes responsive again.
  +
  +*Syncing*
  +
  +The clear and sync mechanism has been streamlined in order to benefit from other changes like *resiliance*.
  +
  +____
  +
  +NOTE: It is not required to reindex documents since the index names and structure has not been changed.
  +
  +icon:check[] File Handling: The file upload mechanism has been overhauled to adress issues with blocked uploads which could occure when uploading multiple files in-parallel.
  +
  +icon:check[] File Handling: Failed Uploads will now remove temporary files from disk. Previously in some error sitations the temporary upload have not been removed.
  +
   icon:check[] Permissions: Applying permissions recursively on projects did not affect branches. This has been fixed.
   
   icon:plus[] Permissions: Setting permissions recursively is now done more efficiently.
  +
  +icon:plus[] Thread Usage: The overall request handling has been refactored to reduce sitations in which the event-loop threads could be blocked. The request handling code has been unified.
  +
  +
  +icon:plus[] Performance: The overall read performance has been improved. The memory usage has been reduced.
   
   [[v0.31.4]]
   == 0.31.4 (TBD)
  
positive.code: 
  icon:plus[] Docker: Default memory settings for the server and demo docker images were added. Default for server is set to `-Xms512m -Xmx512m -XX:MaxDirectMemorySize=256m`. The setting can be changed using the `JAVA_TOOL_OPTIONS` environment variable. See link:https://getmesh.io/docs/administration-guide/#_memory_settings[Memory documentation] for more information.
  
  [[v0.30.2]]
  == 0.30.2 (28.02.2019)
  
  
negative.code: icon:check[] Java Rest Client: Fixed a bug that occurred when calling `getResponse()` with `getBody()` on a binary response.
  
  icon:check[] Java Rest Client: Fixed a bug in the MeshRestClient#isOneOf helper function.
  
  [[v0.30.0]]
  == 0.30.0 (12.02.2019)
  