PHOENIX -- The Diamondbacks' enchanted eight-game run stumbled to an unsightly end Sunday, as shaky pitching culminated in a 13-5 loss to the Rockies.

Arizona, which was defeated for the first time since April 3, set season highs for runs and hits (15) allowed. Starter Edgar Gonzalez, who left after three innings due to dizziness resulting from a dental problem, and the staff as a whole walked five and tied a team record by hitting four batters.

Additionally, Justin Upton was picked off first base and Orlando Hudson ran into a double play by taking off after Colorado dropped a popup with the infield fly rule in effect.

Even so, the Diamondbacks hardly had reason to be in low spirits, not after completing a 5-1 homestand that improved their record to 9-3.

"I thought we were going to win every game for the rest of the year," outfielder Eric Byrnes said, tongue-in-cheek. "We'll just have to start a new streak."

Gonzalez (0-1) stumbled while fielding a bases-loaded tapper that ended the third inning and did not return. Manager Bob Melvin said Gonzalez would not travel with the team to San Francisco on Sunday night in order to have a dental procedure.

"He got a little bit dizzy out there," Melvin said. "I think he's got an infection back there [but] we're optimistic he'll make his next start."

The Rockies hit Gonzalez hard prior to his departure, scoring three runs and rapping five hits, walking twice and having two hit batsmen during his three innings.

Colorado sinkerballer Aaron Cook held his own, allowing three runs over six innings. He allowed eight hits and three walks but stranded six.

Jailen Peguero relieved Gonzalez to start the fourth and was the first of five relievers, four of whom allowed at least two runs. Peguero was optioned to Triple-A Tucson after the game to make room on the roster for Randy Johnson, who will start Monday.

Peguero yielded a two-run double to Yorvit Torrealba to make it 5-1 in the fifth. Two innings later, Juan Cruz yielded three consecutive full-count walks of at least seven pitches before Barmes hit a two-run single.

Doug Slaten retired the Rockies' two lefties in the eighth, but sandwiched between them were a double by Matt Holliday and a two-run homer by Garrett Atkins that made it 9-3.

And, in the ninth, the Rockies broke into double digits in a big way. Tony Pena loaded the bases and one run came across on his wild pitch, after which Holliday drilled a three-run home run.

Nonetheless, there were several bright spots for the Diamondbacks. Starter Doug Davis was with the team for the first time since undergoing surgery on his cancerous thyroid Thursday, outfielder Jeff Salazar tied a career high with three RBIs and Chris Snyder had his best offensive game of the year.

Salazar, making his first start of the season, hit a run-scoring single in the second and hit a two-run triple to deep center in the fifth that cut Colorado's lead to 5-3.

"I was kind of wondering where the outfield was," Salazar joked. "It was fun to get to run around out there."

Snyder, who notched his first extra-base hit Saturday, doubled and scored in the second, singled in the fourth, walked and scored in the sixth and hit a run-scoring double in the eighth.

"He had a great spring, he just got off to a bit of a tough start," Melvin said. "If ever there was a time for him to struggle, it's when everybody around him is swinging the bat well."

Stephen Drew had three hits and scored twice, also driving in Arizona's final run with a ninth-inning single. The Diamondbacks still lead the Major Leagues in runs scored, and even in an ugly loss banged out 12 hits.

"It was a good homestand for us," Salazar said. "I'll take that any homestand. We've got Randy Johnson coming back in San Francisco and it's going to be a good time."