Meshing a cylindrical geometry with a notch
The issue can be addressed by specifying explicit numerical bounds:
<< NDSolve`FEM`
reg=RegionDifference[
Cylinder[{{0, 0, 0}, {0, 0, 2}}, 1/4],
Cuboid[{-0.25, -0.1, 0.9}, {-0.15, 0.1, 1.1}]];
RegionPlot3D[reg,PlotPoints->100]
ToElementMesh[reg, {{-1/4,1/4}, {-1/4, 1/4},{0,2}}]
Here is an alternative with exact numbers:
r = RegionDifference[Cylinder[{{0, 0, 0}, {0, 0, 2}}, 1/4],
Cuboid[{-1/4, -1/10, 9/10}, {-15/100, 1/10, 11/10}]];
m = ToElementMesh[r, MaxCellMeasure -> {"Volume" -> 0.001},
"MeshOrder" -> 1]
But since you want a fist order mesh you could also discretize the regions first and then construct the region difference. This would allow for a good intersection of the regions:
r = RegionDifference[
DiscretizeRegion@Cylinder[{{0, 0, 0}, {0, 0, 2}}, 1/4],
DiscretizeRegion@
Cuboid[{-1/4, -1/10, 9/10}, {-15/100, 1/10, 11/10}]];
m = ToElementMesh[r, MaxCellMeasure -> {"Volume" -> 0.001},
"MeshOrder" -> 1]
m["Wireframe"[PlotRange -> {8/10, 12/10}]]
This will requite a few more elements but it might be worth it.