Japan were denied their first Rugby World Cup victory in 20 years as they were held 23 points apiece against Canada at McLean Park on Tuesday.
The game in Napier created the same sharing of the points that occurred in the 2007 tournament in what was an entertaining spectacle for the fans.
Japan led a scrappy contest 23-15 with just five minutes remaining, but could not hang on for its first tournament win since 1991 as Canada fly-half Ander Monro crossed for a try and then knocked over a levelling penalty soon after.
Hooker Shota Horie and wing Kosuke Endo scored first-half tries for Japan, who started well.
Canada's first two scores came from bleached blondes, centre DTH van der Merwe, who gave his team an early lead, and winger Phil MacKenzie, who ultimately got Canada back in the match.
Canada's chances were dealt a blow when full-back and kicker James Pritchard left the field at half-time, but Monro salvaged the draw.
The Canadians have six points and are in third place in Pool A from a draw and an opening win over Tonga, and now have a match remaining against New Zealand on Sunday.
Japan finished the tournament with two points from three losses and a draw.
Rivals on the sidelines in sunny conditions in front of 14,335 fans at McLean Park, Kirwan and Canada coach Keiran Crowley had both been members of the New Zealand squad which won the inaugural World Cup in 1987.
Crowley's team was dominant early. Van der Merwe was sent bursting through on a 40-yard run after a neat pass from midfield partner Ryan Smith, and only a brilliant ankle tap from Japan full-back Shaun Webb prevented a try under the posts.
Van der Merwe was not to be denied, however, and shook off a soft tackle for a converted try moments later in the seventh minute.
Canada's lead lasted two minutes as Japan won close-range scrum and Horie barreled over in the corner.
As the game started getting scrappy, Pritchard was felled by a huge hit going for a loose ball. He lay motionless for about a minute before being helped to his feet to go off for treatment as Conor Trainor came on as a blood replacement.
With Japan starting to get on top, fly-half James Arlidge slotted over an easy penalty to make it 10-7. Canada had a chance to level straight after and, with Pritchard off the field, Monro struck the left post with his penalty attempt.
Canada got repeatedly caught out by Japan's speedy breaks as the first half drew to a close. Moments before the interval, Japan wasted a scoring chance when unmarked Endo received a dreadful pass that went behind him. But the big winger was set-up under the posts for a converted try moments later to give Japan a 10-point lead.
With Pritchard out of the game, Crowley's team got a boost when MacKenzie drifted past three poor tackles for his second try of the tournament.
Monro missed the conversion but landed a penalty before Arlidge booted Japan to a 23-15 lead with two coolly struck kicks.
Kirwan, meanwhile, set a Rugby World Cup record by being involved in his 23rd match as a coach or player. Kirwan played 11 matches for the All Blacks and the Canada match was his 12th as a head coach. Jason Leonard played 22 matches for England.
Man of the match: He was a threat all day with ball in-hand and fully deserves this award. Well done outside centre DTH van der Merwe. Mentions too for Japan centre Ryan Nicholas and blindside Sione Vatuvei, who were both deadly in attach and defence all day.
Moment of the match: With four minutes to go, Ander Morno needed to convert his own try to set up what would have been a one-point deficit for his side to claw back. As it was, he pushed his kick wide and his penalty shot a few minutes later could only draw his side level.
Villain of the match: No dirty play to speak of.
Tries: Van der Merwe, Mackenzie, Monro
Pen: Monro 2
Tries: Horie, Endo
Con: Arlidge 2
Pen: Arlidge 2
Canada: 15 James Pritchard, 14 Matt Evans, 13 DTH van der Merwe, 12 Ryan Smith, 11 Phil Mackenzie, 10 Ander Monro, 9 Ed Fairhurst, 8 Aaron Carpenter, 7 Chauncey O'Toole, 6 Adam Kleeberger, 5 Jamie Cudmore, 4 Jebb Sinclair, 3 Jason Marshall, 2 Pat Riordan (c), 1 Hubert Buydens.
Replacements: 16 Ryan Hamilton, 17 Scott Franklin, 18 Tyler Hotson, 19 Jeremy Kyne, 20 Sean White, 21 Nathan Hirayama, 22 Conor Trainor.
Japan: 15 Shaun Webb, 14 Kosuke Endo, 13 Alisi Tupuailai, 12 Ryan Nicholas, 11 Hirotoki Onozawa, 10 James Arlidge, 9 Fumiaki Tanaka, 8 Takashi Kikutani (c), 7 Michael Leitch, 6 Sione Talikavili Vatuvei, 5 Toshizumi Kitagawa, 4 Luke Thompson, 3 Nozomu Fujita, 2 Shota Horie, 1 Hisateru Hirashima.
Replacements: 16 Yusuke Aoki, 17 Kensuke Hatakeyama, 18 Hitoshi Ono, 19 Toetuu Taufa, 20 Atsushi Hiwasa, 21 Murray Williams, 22 Bryce Robins.
Referee: Jonathan Kaplan (RSA)
Assistant referees: Bryce Lawrence (NZL), Matt Goddard (AUS)