I think you already get aanswer from Intel Premier Support, but I'll post it here. It might help someone else to understand this function better.
So, there is comment from our expert
I`ll try to explain this feature.
It isn`t bug in function but it is problem of too little rho and theta and big threshold.
Customer uses 3 values of threshold parameter 5, 10 and 15.
Threshold is the minimal number of points which lies at line.
If number of point more than threshold then line are detected.
Reference (not optimized) C code in IPP is based on OpenCV code and uses the same algorithm.
please take a lookon attachedpicture. There is 2 family of lines with rho = 148, 155 and theta = [0..pi] with step 0.1(not 0.01 because of difficulty of appearance )
We can see that vertical line lies exact between lines of Hough grid.
But diagonal line has much more cross with Hough grid and number of point which lies on it is less than 15.