While it is certainly true that the categories of things which can happen are finite within the finite universe, given time, no particular thing can ever be repeated. The cause is that our classification of a thing which happens (and thus our knowledge of the thing which enables us to claim it is happening again) leaves out more than it records. In other words, no event. no matter how small, can be fully and completely encoded and thus fully remembered. Therefore, should you come across a second and encode it exactly as the first, you would suppose that the two were identical. This would meant that "It has happened before; it will happen again.' would be proven true. But in the missing information -- the information not recorded -- it is likely that as some level of detail the two events will diverge and thus, will not be identical.
In addition, the oft quoted saw about those not knowing history are bound to repeat it is only true to the degree that history repeats itself. As noted above though we do not know sufficient details of any past event to know if it is similar enough to the current event to say the two situations are sufficiently enough alike that we can apply the lessons learned from the past and improve the outcomes of the current situation.
Just a thought