Carlos Santana hit a solo homer in the 19th inning as the Cleveland Indians defeated the Toronto Blue Jays 2-1 in a marathon Friday to extend their winning streak to a franchise-record 14 games.

Santana led off the 19th by turning on a full-count pitch from infielder Darwin Barney for his 17th homer of the season. Barney (0-1) had relieved backup infielder Ryan Goins as both teams depleted their bullpens.

The infielders became the ninth and 10th position players to pitch for Toronto.

"That's a weird game," Francona said. "Shoot, they're matching up with infielders."

Bauer power

For Cleveland, it's the longest winning streak in MLB since the Atlanta Braves won 14 straight in 2013.

"I guess if you're going to set a record, you might as well do it the hard way," said Indians pitcher Trevor Bauer, who came in to pitch despite being Saturday's scheduled starter.

Bauer (7-2) worked five innings of relief for the win as the Indians spoiled the Canada Day party at Toronto's Rogers Centre.

"I thought what Trevor did was above and beyond," Indians manager Terry Francona said.

Cleveland (49-30) used nine pitchers in a game that lasted six hours and 13 minutes.

Donaldson's drive

The Blue Jays fell to 43-39 with their eighth loss in 12 games. Justin Smoak provided Toronto's lone run with a solo homer in the sixth inning.

The Indians nearly took the lead in the 10th inning. Cleveland put two runners on but Kevin Pillar made a brilliant diving catch in centre field to end the threat.

The Blue Jays threatened in the 11th but Zach McAllister got Smoak to pop up with runners on the corners to end the frame.

Josh Thole nearly ended the game in the 15th but his rainbow flyout landed in Lonnie Chisenhall's glove on the warning track.

Donaldson nearly tied it in the 19th but his drive to right was caught on the warning track.

"I thought he hit it out for sure," Bauer said. "He hit it and I was like 'You've got to be kidding me.'"

Martin not happy

There were some early fireworks as Blue Jays slugger Edwin Encarnacion and manager John Gibbons were ejected in the first inning.

Encarnacion objected to umpire Vic Carapazza's called third strike on what appeared to an outside pitch. Gibbons quickly came out of the dugout and was also tossed.

Russell Martin was later tossed in the 13th inning after arguing with Carapazza.

"He just wasn't very good today," Martin said of Carapazza. "I felt like he really didn't have to throw me out."

Russell-Martin-Ejection

Toronto's Russell Martin, centre, was ejected in the 13th inning Friday after arguing with umpire Vic Carapazza, left. Two other Blue Jays were tossed in the first inning. (Frank Gunn/The Canadian Press)

Blue Jays starter Marcus Stroman escaped damage after putting runners on in the first two innings but Cleveland got to him in the third. Carlos Santana led off with a double and scored on a Jason Kipnis single.

After that, Stroman retired 12 straight batters until giving up a leadoff single to Chisenhall in the seventh. Rajai Davis reached on an error by Smoak at first base and Stroman walked Carlos Santana to load the bases.

Acting manager DeMarlo Hale turned to southpaw reliever Brett Cecil, who got Kipnis to fly out. Stroman allowed five hits, one earned run, one walk and had six strikeouts.

Tomlin fanned eight over six innings. He allowed seven hits, one earned run and walked a pair.

On Friday, Gibbons revealed that outfielder Jose Bautista is not expected to return before the all-star break. Bautista injured his left big toe on June 16 in Philadelphia.

Ryan Goins pitches for Jays, serves up double play0:33