Ukraine's rival presidential candidates have held a long-awaited head-to-head televised debate at Kiev's giant Olympic stadium.

Comedian Volodymyr Zelensky and incumbent president Petro Poroshenko shook hands before launching scathing attacks on one another.