So I finally figured it out. My expectation about how scan beams were added into OcTree was wrong. And I did also set frame_id to world instead of actual sensor frame. So basically when was my quadrotor flying up in the air, octomap was thinking that sensor is still on the ground on position [0,0,0] which lead to beam from position [0,0,0] to end of the beam instead of position of my robot to end of beam...