Should you update child states based on the parent?
It's opinion based, but I would err on the side of updating the bare minimum when a status changes.


If you cancel an event and only update the Event row indicating cancelled then you minimize the amount of data that would need to be updated should the event be reinstated.
Likewise, if you cancel a session, and only update the Session row indicating cancelled then you minimize the amount of data that would need to be updated _should the session be reinstated.
As Joe W points out in a comment: 



  if you do update the sessions as well if there was sessions canceled
  for other reasons you would have a harder time getting the status
  correct if you un-cancel an event as you might not know exactly which
  sessions should still be canceled.