Intersected meshes make chain break
Since I had no luck with your file I created someting compareable.
Getting this working is tricky. You need to find balanced parameters most important are mass and sensitivty. 
A mass of 100 is way to much and sensitivity should be > 0, e.g. 0.01 (probably blender units).



With a mass of 1.0 the simulation breaks after 90 frames:



When the mass of the second ring only is increased to 2 it works as expected.