Pool B, East London: South Africa 254-8 (50 overs) beat Canada 136-5 (50 overs) by 118 runs
South Africa failed to give themselves the confidence boost they were looking for as they were made to toil by stubborn Canada.
Struggling to qualify for the Super Sixes, the hosts were seeking a crushing win over the World Cup minnows before a crunch match against Sri Lanka on Monday.
However, they followed an unconvincing batting performance by failing to bowl out their inexperienced opponents, leaving their fans dismayed.
South Africa looked set to skittle out Canada when in the second over John Davison's ill-advised hook only found Monde Zondeki to give Makhaya Ntini the first of his two wickets.
Canada were soon reduced to eight for two when Shaun Pollock capped a stunning opening spell, in which he delivered five maidens, with the wicket of Desmond Chumney.
But from then on Canada's batsmen showed commendable resolve, despite never threatening to cause an upset.
The pace trio of Pollock, Ntini and Allan Donald beat the bat time and again, but were frustrated by the Canada batsmen and some slack fielding from their team-mates.
Donald will be particularly disappointed to have missed out on the wickets after admitting before the match that he needed a good performance to keep his place in the side.
Opener Ishwar Maraj led a charmed life as he was dropped four times on his way to an unbeaten 53 off 155 balls.
Maraj became only the eighth man to carry his bat through the full quota of overs in a World Cup.
Nicholas de Groot and skipper Joe Harris also made nuisances of themselves at the crease, despite South Africa's bowlers consistently beating the bat.
And it was Canada, not South Africa, who were the happier at the finish as they negotiated 50 overs for the first time in the World Cup.
Earlier, South Africa put a shocking start behind them to reach a reasonable total of 254 for eight.
I am happy we didn't go out there and embarrass ourselves
Canada captain Joe Harris
The home crowd were stunned into silence when Herschelle Gibbs carelessly edged to the keeper to give international debutant Ashish Patel his first of three wickets.
And even Canada looked surprised when first Gary Kirsten provided another edge to a dangerous delivery from Davis Joseph and then Jacques Kallis became Patel's second victim.
South Africa were reeling and things could have been even worse but for a dropped catch at slip by Canada captain Joe Harris when Dippenaar was on 12.
But the South African batsman, along with Smith, took full advantage of the reprieve as the pair put on 109 for the fourth wicket to bring the total some respectability.
Patel was the pick of the bowlers, returning figures of three for 41.
South Africa: Gary Kirsten, Herschelle Gibbs, Graeme Smith, Jacques Kallis, Boeta Dippenaar, Mark Boucher, Shaun Pollock (captain), Andrew Hall, Allan Donald, Makhaya Ntini, Monde Zondeki.
Canada: Ishwar Maraj, John Davison, Desmond Chumney, Ian Billcliff, Joe Harris (captain), Nicholas de Groot, Nicholas Ifill, Ashish Bagai, Davis Joseph, Barry Seebaran, Ashish Patel.
Umpires: Daryl Harper, Australia and Kevan Barbour, Zimbabwe.
TV umpire: Aleem Dar, Pakistan.
Match referee: Waseem Raja, Pakistan.