In camunda fox 6.1, we wrote process variables to the HistoricVariableInstance Table at the point in time when the process instance completes.
Starting from camunda fox 6.2 HistoricVariableInstances are written to the database "live", ie. a variable is written to that table immediately when it is changed and we do wait until the process instance is finished.
The camunda BPM 7.0 code assumes that variable instances always exist, which caused a NullPointerExeption in the DbHistoryEventHandler.
Th fix is to change this behavior in a way that when we receive a HistoricVariableInstnace UPDATE event we seach for an existing row in the Database. If we can find an existing HistoricVariableInstance we update it. If not, we insert a new row at this time.