SAN FRANCISCO — Madison Bumgarner has seemingly been able to overcome the normal rules of baseball at times, doing the improbable over and over again in search of greatness. But one feat continues to slip through his fingers. 

Bumgarner once again flirted with a no-hitter Sunday night, taking one into the eighth before giving up a clean single to right with one out. He settled for his fourth career one-hitter in a 4-0 win over the Diamondbacks, tying a career-high with 14 strikeouts. 

The Giants finished the first half with a 57-33 record and took baseball's best record into the All-Star break for the first time since 1993. Bumgarner is lined up to start the first game of the second half, and he didn’t disappoint in his final appearance before the break. 

The 5 p.m. start draped the infield in shadows and Bumgarner took advantage of the tough conditions, feeding the Diamondbacks a steady stream of sweeping breaking balls. Jean Segura and Paul Goldschmidt went down on curveballs in the first and the slider finished off two more batters in the second. 

After fooling opposing pitcher Archie Bradley with a curve in the third inning, Bumgarner went slider, curveball, slider to strike out the top of the order in the fourth. Welington Castillo swung over the top of a curveball while leading off the fifth and Yasmany Tomas was caught staring at one. At that point, Bumgarner had five consecutive strikeouts and his 29th career double-digit strikeout game.


The next batter, Jake Lamb, became the first Diamondback to get a ball out of the infield. Gregor Blanco had been shading Lamb over toward Triples Alley and he appeared to lose the ball in the sun as he took off on a dead sprint. Blanco got under the ball but dropped it, with the official scorekeeper ruling “error” before the throw back even reached the infield. 

Bumgarner threw a fastball past Brandon Drury to end the inning. Moments later, he patted Blanco on the leg when the disappointed right fielder approached in the dugout with an apology. 

The Diamondbacks made slightly more contact in the sixth, but it wasn’t solid. Nick Ahmed flied out to center and Jean Segura grounded out to third baseman Ruben Tejada, who was a defensive replacement for Conor Gillaspie after the bottom of the fifth. Bumgarner finished the sixth at 86 pitches, with a season-high 12 strikeouts. He got through the seventh on just eight pitches, tacking on another strikeout. 

Bumgarner struck out in his first two at-bats and popped up to the catcher in the sixth, a stretch that usually would annoy him. But he walked calmly back to the dugout after each at-bat, knowing his teammates had done more than enough. The Giants scored twice in the first and tacked on two runs in the seventh, allowing Bumgarner to walk out for the eighth with a lead that felt like double-digits. 

He again struck out Tomas, tying his career-high in strikeouts, but Lamb followed by lining a 2-2 slider onto the grass in shallow right. Bumgarner received a thunderous standing ovation and he recovered right away, getting Drury to hit into a double-play. As Bumgarner walked back to the dugout he looked out to his right, the disappointment clear on his face. On the sixth anniversary of Jonathan Sanchez’s no-hitter, he wasn’t able to get it all the way home.