Updated

Adam Eaton's fourth hit of the game, a two- run double with two out in the top of the 16th inning, broke a long tie and lifted the Arizona Diamondbacks to a hard-earned 4-2 decision over the Pittsburgh Pirates at PNC Park.

Eaton's sinking liner that a diving Pirates center fielder Andrew McCutchen couldn't come up with helped the streaking Diamondbacks take the rubber match of the three-game series and post their fifth victory in six outings after J.J. Putz secured his sixth save of the season in the bottom of the 16th to cap a sequence of eight scoreless innings by the Arizona bullpen.

"Just trying to see something up and try to drive it to the left side," Eaton said of his approach in his final at-bat.

Brad Ziegler (7-1) fired a pair of perfect frames in front of Putz to collect the win.

Aaron Hill also amassed four hits, including an RBI single, for the Diamondbacks, while starting pitcher Wade Miley struck out eight while allowing just two runs in an eight-inning no-decision.

Kris Johnson (0-1), called up by the Pirates from Triple-A Indianapolis prior to the contest, held Arizona scoreless for five consecutive innings of relief in his major league debut, but wound up the loser after being touched for both runs in the 16th.

"It's a little nerve racking at first," Johnson said of his debut. "I just tried to go as deep as I could to try and save the bullpen, that was the main thing, and then try to keep the team in the ball game and hopefully we could score some runs at the end."

Jordy Mercer went 3-for-5 with an RBI double for Pittsburgh, but the Pirates managed just nine hits as a team and fell for the seventh time in their last nine. The loss moved second-place St. Louis within one game of the Bucs' lead atop the NL Central.

After the Diamondbacks tied the game by reaching Pittsburgh starter Charlie Morton for a pair of runs in the top of the sixth, neither team scored over the next nine innings as pitching dominated on both sides and each offense failed to execute when given scoring chances.

Johnson was particularly impressive, yielding just three singles and a walk while throwing five straight blanks upon taking over in the top of the 11th.

The rookie did surrender a leadoff walk to A.J. Pollock to begin the 16th, however, with Didi Gregorius following with a single to right to put two men aboard. Johnson rebounded to get the next two batters out, and made a good pitch on Eaton that the Arizona outfielder fought off and sent into shallow center.

McCutchen charged hard and got a glove on the ball, but couldn't pull it in as both Pollock and Gregorius came around to score.

Morton worked the first seven innings for Pittsburgh and allowed two runs on seven hits while fanning six. He was terrific over the game's early stages, striking out the first four Arizona batters while permitting just one hit over the initial three innings, and was quickly given a 1-0 edge after Russell Martin followed a two-out walk to McCutchen in the bottom of the first with a deep double off the right-field scoreboard that plated a run.

Mercer extended the lead to 2-0 in the fourth when his double into the gap in right center brought home Starling Marte, who had reached via an infield single.

After barely putting forth a threat over the opening five innings, Arizona finally got to Morton in the sixth. After singles by Eaton and Martin Prado and a walk to Paul Goldschmidt loaded the bases with no out, Hill laced a single to left to put the Diamondbacks on the board.

Morton was able to minimize the damage somewhat, though, after getting Gerardo Parra to bounce into a double play that enabled Prado to cross with the tying run.

The Pittsburgh right-hander worked his way out of an even tougher jam in the seventh to keep the contest tied. Morton allowed a walk, a single and hit Eaton to fill the sacks with one out, but escaped unharmed when Prado lined out and Goldschmidt fanned swinging.

Pittsburgh put the go-ahead run in scoring position in the eighth when Marte stroked a leadoff single and was sacrificed to second. However, he was caught trying to steal third as Miley struck out Martin with his final pitch.

The Pirates mustered little offense from that point on. Arizona had a chance to pull ahead against Johnson in the 12th, with Eaton singling with one out and advancing a base on a Prado groundout. However, Marte came up with a critical diving catch on Hill's liner to short left to keep it a 2-2 game.

Game Notes

Eaton's four hits set a career high ... The Diamondbacks moved to 13-5 in extra-inning games, a club record for wins in such situations, and are now 9-0 when going extras on a travel day. Seven of those victories have come on the road ... Johnson became the first Pirates hurler to throw at least five innings of relief in his big league debut since Steve Blass (5 IP) on May 10, 1964 ... Hill extended his hitting streak to 11 games and is batting .447 (31- for-47) over the tear ... Arizona, which trails Cincinnati by five games for one of the NL's two wild card spots, visits the Reds for a four-game set beginning Monday.