Bulletins are stored in memory by NiFi on a 5-minutes rolling window. Each bulletin has a bulletin ID and it starts with the value 0. Upon NiFi restarts, the new generated bulletins will also have an ID starting with the value 0.
Currently the reporting task is locally storing the ID of the last bulletin sent through S2S. But this should not be the case because if the last bulletin ID is X when NiFi is restarted, then all new generated bulletins with ID <= X will be ignored.
The state management of this reporting task should be completely removed. Starting/stopping the reporting task won't be impacting the behavior since the ID of the last bulletin sent is stored in local variable.
Current workaround - after a NiFi restart, stop the reporting task, clear the state of the reporting task and start the reporting task.