FC scan too broad (regression)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
os-brick |
Fix Released
|
Undecided
|
Gorka Eguileor |
Bug Description
After some changes to the FC connector we have introduced a regression on the way we do the scans, and we end up scanning using wildcards even though we shouldn't.
The issue originates, as always, from the different interpretations that Cinder drivers do of the "initiator_
Some consider this to be a mapping of what host ports can connect to what array ports, whereas for others is the ports that have been authorized (regardless of whether they can access or not).
With the current code, if we have the following connections:
HBA host7 ---- SWITCH ---- port W (channel 0, target 2)
\--- SWITCH ---- port X (channel 0, target 3)
HBA host8 ---- SWITCH ---- port Y (channel 0, target 2)
\--- SWITCH ---- port Z (channel 0, target 3)
We will end up with the following scans 8 scans for LUN L:
- - L > host7
- - L > host7
0 2 L > host7
0 3 L > host7
0 2 L > host8
0 3 L > host8
- - L > host8
- - L > host8
Which correspond to the responses from _get_hba_
port Y port Z port W port X
host7 ... ['-','-',L] ['-','-',L] ['0','2',L] ['0','3',L]
host8 ... ['0','2',L] ['0','3',L] ['-','-',L] ['-','-',L]
And we should only be doing 4 scans:
0 2 L > host7
0 3 L > host7
0 2 L > host8
0 3 L > host8
This bug is related to bugs: #1765000 and #1828440
Fix proposed to branch: master /review. opendev. org/690640
Review: https:/