Bug 730736

Summary: [RFE] obsolete validateStorageServerConnection
Product: [Retired] oVirt Reporter: Haim <hateya>
Component: vdsmAssignee: Allon Mureinik <amureini>
Status: CLOSED CURRENTRELEASE QA Contact: lkuchlan <lkuchlan>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 3.3CC: abaron, acanan, amureini, bazulay, bugs, danken, hateya, iheim, mgoldboi, michal.skrivanek, sherold, yeylon, ykaul
Target Milestone: ---Keywords: CodeChange, FutureFeature, Reopened
Target Release: 3.6.0Flags: amureini: ovirt_requires_release_note?
Hardware: x86_64   
OS: Linux   
Whiteboard: storage
Fixed In Version: ovirt-3.6.0-alpha1.2 Doc Type: Deprecated Functionality
Doc Text:
As of the VDSM included in 3.6.0 (exact build number pending official build), VDSM will no longer support engines older than 3.3.0. It will, however, continue to support clusters and data centers with compatibility versions lower than 3.3 defined on newer engine installations.
Story Points: ---
Clone Of:
: 1215387 (view as bug list) Environment:
Last Closed: 2015-11-04 12:57:46 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1215387    

Description Haim 2011-08-15 15:00:56 UTC
Description of problem:

case:

validateStorageServerConnection verb validates only that parameters are rightfully assembled in cmd and not that storage is either active or reachable. 

example - valid storage domain:

vdsClient -s 0 validateStorageServerConnection 3 0
id=1,connection=10.35.64.106,iqn=iqn.2011-06.com.redhat:hateyaiscsi4,user=,password=,portal=1,port=3260

Connection id 1 - status 0

example - invalid storage domain:

vdsClient -s 0 validateStorageServerConnection 3 0 id=1,connection=10.35.64.108888888888888,iqn=iqn.2011-06.com.redhat:hateya-iscsi4,user=,password=,portal=1,port=3260

Connection id 1 - status 0

notes:

1) I know that rhevm uses this verb before they send connect storage server; and I don't see a reason for it.
2) if we are not going to fix it, then lets remove it.

Comment 2 Dan Kenigsberg 2011-08-15 16:36:19 UTC
Using validateStorageServerConnection to check connectivity is wrong, as it is inherently raceful - connectivity may be lost just after checking it succeeds.

Like you, I do not see any reason to make validateStorageServerConnection see another day. Ayal, any insight?

Comment 3 Omer Frenkel 2011-08-16 08:20:51 UTC
currently, rhevm commands divided to 2 main phases: CanDoAction and Execute.
the CanDoAction is meant to return a fast and as much as possible reliable answer to the user if the command will succeed, and give better error and frontend handling. 

before connecting to a storage there is a check in CanDoAction to see if it should succeed, therefore i think the opposite: this verb should be fixed and rhevm should check where it is can used more.

although there is a race, and this we cannot solve, there are many cases it would save the user getting errors during execution.

Comment 6 Itamar Heim 2013-03-12 09:36:36 UTC
Closing old bugs. If this issue is still relevant/important in current version, please re-open the bug.

Comment 7 Allon Mureinik 2015-01-24 11:14:46 UTC
The engine's use of validateStorageServerConnection was removed in 3.3.0, and I'd really like to remove it from VDSM too.

The only "snag" here is that removing it from VDSM will break it's backwards-compatible ability to going a 3.2 cluster managed by a 3.2 engine.

Scott/Itamar - in what version will we be able to do this?

Comment 8 Itamar Heim 2015-01-24 12:04:16 UTC
In 3.6 since will only be used on .el7 / >= 3.4 engine.

Comment 9 Allon Mureinik 2015-04-26 07:46:53 UTC
Flagging requires_doc_text as this change needs to be documented and requires_release_note? for consideration whether or not this should be in the release notes, or whether the doctext is enough.

Comment 10 lkuchlan 2015-05-27 05:30:00 UTC
Tested using:
ovirt-engine-3.6.0-0.0.master.20150519172219.git9a2e2b3.el6.noarch
vdsm-4.17.0-822.git9b11a18.el7.noarch

Verification instructions:
1. Run "vdsClient" and verify that "validateStorageServerConnection" is no longer there.

Comment 11 Sandro Bonazzola 2015-11-04 12:57:46 UTC
oVirt 3.6.0 has been released on November 4th, 2015 and should fix this issue.
If problems still persist, please open a new BZ and reference this one.