Aroldis Chapman failed for the first time all season, unable to throw his ultimate fastball past a reserve catcher batting .193.
Michael McKenry's RBI double in the 10th inning ruined Chapman's perfect earned run average on Thursday night and rallied the Pittsburgh Pirates to a 5-4 victory over the Cincinnati Reds that was as inevitable as it was painful.
"You knew Chapman was going to get beat someday, but you didn't want it to end like this," manager Dusty Baker said.
Chapman (4-1) hadn't allowed an earned run in a club-record 24 appearances covering 29 innings. He came in to start the 10th with a 0.00 ERA and gave up a leadoff double by Clint Barmes — only the eighth hit off the left-hander all season.
McKenry knew what was coming next.
"He's a special guy with a special arm," McKenry said. "You've got to prepare for the 100 mph fastball. You can't think about anything else."
McKenry's double to right field off a 99 mph pitch allowed the Pirates to pull out a game they almost let get away.
"I knew something crazy was going to happen in this game," Reds second baseman Brandon Phillips said. "It wasn't a save situation. He's human. You knew he was going to get hit someday."
McKenry also had a sacrifice fly for a 4-3 lead in the seventh, but closer Joel Hanrahan (3-0) blew a save for only the second time this season, giving up a leadoff homer to Ryan Ludwick in the ninth.
Chris Resop got his second major league save, allowing the Pirates to take two of three in the series against the NL Central leaders. Resop got Ludwick on a called third strike with two runners aboard, completing Pittsburgh's ninth win in 12 games.
McKenry figured in the Pirates' biggest moments in a back-and-forth game.
His sacrifice fly in the seventh took advantage of Phillips' blunder. The Gold Glove second baseman turned his back to the infield after getting an out at first base on a sacrifice, allowing Jose Tabata to go from first to third on the play. McKenry drove him in.
"I forgot the guy was on second base," Phillips said. "With little things like that, you never know how the game is going to turn out. I was trying to make sure I got the out. The guy made a good play."
Pittsburgh's bullpen ranks second in the NL to Cincinnati's and had blown only three save chances, fewest in the league.
Ludwick hit Hanrahan's first pitch into the upper deck to tie it. Hanrahan came into the game 15 of 16 in save chances, having converted 10 in a row since his other missed opportunity on May 8.
Ludwick and Jay Bruce also had solo shots off Kevin Correia. It was Ludwick's 13th career multihomer game.
Bruce led off the second inning with his 13th homer. At least one homer has been hit in each of the last 53 games at Great American Ball Park since last July 29, the longest such streak since there were 63 straight games with a homer at Philadelphia's Citizens Bank Park in 2007-08, according to STATS LLC.
Cincinnati's Joey Votto doubled in the first inning, extending his hitting streak to 13 games, one shy of his career high. Tabata threw Votto out at the plate when he tried to score on Phillips' single to right field.
Alex Presley doubled, singled and scored a pair of runs batting atop the Pirates' order. Presley, called up at the start of the series to bat leadoff, went 5 of 14 and scored three runs as Pittsburgh won its fifth straight series.
Garrett Jones drove in two runs for Pittsburgh with a sacrifice fly and a single.
NOTES: The Pirates play their next 15 games against American League teams, starting with three at PNC Park against Kansas City. The Reds host a three-game weekend series against Detroit, making its first trip to Cincinnati since 2001. ... Pittsburgh is 16-10 in one-run games. ... Pirates 3B Pedro Alvarez was back in the lineup after sitting out a few games. He broke an 0-for-18 slump with a pinch-hit single on Wednesday. ... Reds 3B Scott Rolen took batting practice for the second consecutive day. Rolen has been on the DL with an inflamed left shoulder since May 12. There's no timetable for his return. ... Reds CF Drew Stubbs missed his second straight game with pulled muscles in his left side. He said the injury was improving.
Follow Joe Kay on Twitter: http://twitter.com/apjoekay