It might be because of the strain and tear in the muscle and like you said your pain has been pertaining for a very long time so, I would suggest you to consult a doctor.