"You can't lose that kind of game," Mets manager Willie Randolph said. "You use all your roster, you have to win the game. You're out there that long, you don't want to waste it."
Phillies manager Charlie Manuel felt the same way.
"We had the game won a couple of times but it got away from us," he said.
Carlos Beltran settled this battle of attrition by leading off the 16th inning with his 12th home run, ending a five-hour, 22-minute marathon that was the longest game in the major leagues this season. There were 521 pitches and Beltran hit the last one into the New York bullpen.
The Mets used 21 players and the Phillies 18. The only position player who didn't get into the game was Philadelphia reserve outfielder Chris Coste.
Ryan Madson (4-3) worked seven scoreless innings in relief, uncharted territory for him, before Beltran's homer ended it and gave him the loss.
"I never thought I would (go that long)," said Madson, who threw 105 pitches. "I felt better later. I felt comfortable. I had no idea how many pitches I threw."
Madson said he was prepared to go as long as necessary. Only closer Tom Gordon and Real Cormier were left in the Phillies bullpen and Cormier had received an injection in his shoulder and was unavailable.
"I knew I was it," Madson said.
Beltran caught up with a high fastball to end it.
"As soon as I hit it, I knew it was gone," he said. "It was a fastball up and in and I was able to hit it good."
Darren Oliver (2-0) worked four shutout innings to earn the victory that stretched the Mets' lead in the NL East over the Phillies to four games.
Jose Reyes capped a furious New York comeback with a two-out, two-run homer in the eighth, tying the score at 8-8. The rally started when Endy Chavez beat out an infield hit and scored on a pinch double by Chris Woodward. Reyes, who had been 0-for-4, followed with his fourth homer of the season.
"I don't know how I got that one," he said, after golfing the ball over the wall, one of four homers hit by the Mets.
Rookie Shane Victorino's RBI single to right broke a 2-2 tie in the fifth and then Bell, who had just 13 RBI before Tuesday night and had flied out to end a bases loaded threat in the third, followed with his fourth homer of the season for a 6-2 lead.
In the bottom of the inning, Chavez singled and pinch-hitter Jose Valentin walked. After two outs, Beltran's infield single scored Chavez, who had stolen third.
An inning later, consecutive doubles by Floyd and Kaz Matsui made it 6-4. Then Julio Franco, appearing in his 2,400th major league game, delivered a pinch double against reliever Aaron Fultz, scoring Matsui.
In the seventh, Mets reliever Aaron Heilman walked Ryan Howard and Victorino, and Bell followed with a two-run double to left center. But the Mets came back again in the eighth on hits by Chavez and Woodward before Reyes' home run tied the score at 8.
- Mets RF Xavier Nady was a late scratch from the lineup because of lower back stiffness.
- Wright's second-inning homer was the first run the Mets scored for Steve Trachsel in three starts.
- Floyd's homer was his second in the last three games.
- It was the longest Mets game since 1995.
- Rob Bell of the Tampa Bay Devil Rays was the last pitcher to have a seven-inning relief stint, getting the win with seven shutout innings against Arizona on June 19, 2004.