DENVER -- Todd Helton's milestone day was dampened by an ineffective bullpen.
The longtime Colorado Rockies first baseman played in his 2,000th career game Thursday, only to see the Chicago White Sox rally late for a 6-4 win in 10 innings.
That despite starter Aaron Cook finding the form which has made him Colorado's winningest career pitcher.
He threw six solid innings and was in line for his first win, before the Rockies' relievers gave up two runs in the eighth inning and two more in the 10th.
"It's one of those games we should've won," said Helton, who tipped his cap in the sixth when the crowd gave him a standing ovation for reaching the 2,000-game plateau. "Could've won a series right there – let one get away."
Juan Pierre laced a tiebreaking, two-run single off the wall in the 10th inning, helping the White Sox take two of three from the Rockies.
With the bases loaded, Pierre, who's known for his speed more than his power, turned on a pitch from Clayton Mortensen (2-4) that hit off the top of the wall in right.
The ball was hit so hard and on such a line that the runners held up on the bases, limiting Pierre to just a single. A.J. Pierzynski and Gordon Beckham scored on the decisive play.
"They nicked us, they tied us and then they beat us in extra innings," Rockies manager Jim Tracy said.
The three-game series was tightly contested, with the Rockies winning in 13 innings on Tuesday, the White Sox taking the second game with a run in the ninth Wednesday and then Pierre coming up big for the White Sox on Thursday.
Leading 4-2 in the eighth, reliever Matt Lindstrom gave up an RBI single to Beckham, followed later by Pierre's game-tying sacrifice fly.
"Just trying to be me and pound the strike zone," Lindstrom said. "They did a good job putting the ball in play. The name of the game is hitting it where they ain't, I guess."
Jake Peavy only made one major mistake all afternoon, leaving a pitch up to Troy Tulowitzki in the opening inning after the two engaged in quite a showdown.
On the 12th pitch of the at-bat, Tulowitzki crushed an 89-mph fastball from Peavy over the fence in center for a three-run homer.
"Troy, you've got to give credit where credit is due. He fouled off some good pitches," Peavy said. "He waited around and got a pitch he could do some damage with."
Cook was efficient in the no-decision, giving up five hits and one run before being pulled for a pinch hitter in the sixth. He's still searching for his first win since last September as the bullpen couldn't hold the late lead.
The sinkerball specialist enticed the White Sox to hit into three double plays, allowing him to wiggle out of several jams.
Cook struggled with his command in the second as he walked three in the inning, hit a batter and threw a wild pitch that allowed a runner to score. But he eventually escaped further damage by getting Pierre to ground out with the bases loaded.
"The second inning was a little rushed and I couldn't find my release point," Cook said. "After that, I settled down and got back to what I do: Let them put the ball in play and let our defense work."
Moments before the game, the Rockies acquired veteran second baseman Mark Ellis from Oakland to revamp their infield. He's expected to be available Friday night against Kansas City.
The Rockies are hoping he can provide some consistency at second. The team has used Chris Nelson, Jonathan Herrera, Eric Young Jr. and Jose Lopez, who's now gone.
"I think the message with this acquisition of a veteran, proven major league player is there's no scholarship program here," Tracy said. "This is not a feel-good situation."
NOTES: The Rockies sent minor league RHP Bruce Billings and a player to be named to Oakland for the 34-year-old Ellis and cash. ... Herrera finished 2 for 3 for his first multihit game since May 19 in Philadelphia. ... Helton became the 54th player to play 2,000 games with one team. He's also the third active player, joining Derek Jeter and Chipper Jones. ... Backup C Matt Pagnozzi had his first RBI with the Rockies with a single in the sixth.