There are several methods for addressing disagreement during story estimation. I usually start by asking each side to quickly and clearly state their reasoning behind their estimate. The team will usually self-correct and find an estimate that honors all sides. If the answer is not clear, I might suggest making scope decisions, adding spike stories, or breaking the story into smaller stories to deal with risk.
If the team still cannot agree, I suggest that the person with the most stake in the game for that story makes the decision. We decide who that person is, and they make the call. We also agree not to hold negative feelings toward the person in the future if their decision turns out to be problematic. We agree to use anything we learn to improve future estimation activities.