"I saw some good stuff today," Melvin said. "I'm surprised at some of the at-bats. Canha hits a pitch down that's moving all over the place to right-center field. You don't expect that good of at-bats to start. ... Especially, the stuff I saw was really good.
"Sonny's ball was moving all over, had a really good breaking ball for a strikeout, just threw a pretty good pitch down to Canha, and he ended up hitting it in the gap. But I thought his stuff was really good."
Gray allowed two hits -- the other to non-roster outfielder Alejandro De Aza -- and issued a walk to catcher Josh Phegley in one inning, striking out one batter, Ryon Healy. Graveman, meanwhile, was limited to 15 pitches two days ahead of his first scheduled Cactus League start and gave up two runs on three hits. Rajai Davis led off with a triple and scored on Stephen Vogt's ensuing single; back-to-back singles from Khris Davis and Trevor Plouffe brought in another run.
In the other game, Melvin said lefty Sean Manaea and right-hander Daniel Gossett threw well. Left-hander Daniel Coulombe also made an appearance, surrendering a home run to Yairo Munoz.
Rare is it that hitters are ahead of pitchers at this time of the year. Canha's performance was especially encouraging, considering he missed the majority of 2016 while rehabbing from hip surgery.
"I threw BP to him today, too," Melvin said. "He looks healthy, strong. He's probably in better shape than he's ever been in. You come off surgery like that, you better work hard to rehab it, and he certainly did, so it was good to see him get a good swing like that right away."
Melvin said Canha will be in the lineup for Saturday's Cactus League opener against the host Cubs at Sloan Park.
The A's remain in wait mode with right-hander Santiago Casilla, who has yet to join camp from the Dominican Republic because of visa paperwork.
"It's still day to day," Melvin said Thursday. "We thought it might be today, tomorrow, based on the fact we felt like he was close."