Bobby Abreu is mobbed by teammates after hitting a walk-off sacrifice fly… (Stephen Dunn / Getty Images )
This was a curious battle of the bullpens, one to see which could suffer the more galling implosion.
Angels reliever Bobby Cassevah opened the door for Baltimore in the eighth inning Saturday and Jordan Walden couldn't close it.
The Angels' Hisanori Takahashi put two runners on base in the 12th inning and Fernando Rodney allowed both to come home.
Still, none of those shortcomings could match the 12th-inning meltdown of Baltimore's Kevin Gregg. The Orioles closer failed to retire any of the five batters he faced, allowing the Angels to mount an improbable three-run rally during a 9-8 victory at Angel Stadium.
With the bases loaded and nobody out, Bobby Abreu drove in the winning run with a sacrifice fly off Troy Patton. Vernon Wells tagged up and trotted home, touching off a celebration in the infield.
The Angels' third consecutive victory pulled them to within five games of Texas in the American League West.
Erick Aybar led off the 12th with a single through the right side of the infield and went to second when Gregg, a former Angel, hit Mike Trout with a pitch. Hank Conger put down a sacrifice bunt, and third baseman Josh Bell threw the ball past first baseman Mark Reynolds, allowing Aybar to score and make it a one-run game.
Bell made a diving stop on Peter Bourjos' ensuing sharp grounder, but his throw to first base was too late to get the speedy runner and the Angels had the bases loaded.
Gregg then walked Alberto Callaspo on five pitches to score Trout and tie it up, prompting Orioles Manager Buck Showalter to replace Gregg with Patton and set up the showdown with Abreu.
Things had looked bleak for the Angels only minutes earlier. Adam Jones had driven in a run off Rodney with a two-out single through the right side of the infield with two out in the 12th. Right fielder Torii Hunter's throw skipped past catcher Hank Conger for an error that allowed J.J. Hardy to score an insurance run, giving Baltimore an 8-6 lead.
Earlier, Walden's bid for his first five-out save had lasted all of one pitch.
Angels Manager Mike Scioscia had asked Walden to go for his longest save of the season after the Orioles had rallied for one run off Cassevah in the eighth and put the tying run in scoring position.
Instead, Matt Wieters ripped Walden's initial offering to center field, driving in Jones to deadlock the score and give Walden his league-leading ninth blown save.
Before the late letdown, Angels starter Joel Pineiro appeared on track for his first victory since July 9.
The sinkerball specialist gave up nine hits and four runs in six innings, not even qualifying for a so-called quality start. Yet it was nearly good enough.
Making his first start since Aug. 3 following a demotion to the bullpen, Pineiro pitched the deepest he had in a game since he lasted seven innings during a victory over Seattle on July 9.
Not that it was a thing of beauty. The Orioles scored three runs in the second inning, putting the Angels in extended catch-up mode.
Hunter extended his hitting streak to 18 games with a second-inning single and the Angels eventually took a 6-4 lead.
But no advantage was safe on this night.