Merge "HNAS driver: retry on Connection reset fix"

This commit is contained in:
Jenkins 2016-02-10 19:41:52 +00:00 committed by Gerrit Code Review
commit ed9a211973
2 changed files with 15 additions and 1 deletions

View File

@ -240,6 +240,8 @@ File System : fs1 \n\
File System Mounted : YES \n\
Logical Unit Mounted: No"
HNAS_RESULT27 = "Connection reset"
HNAS_CMDS = {
('ssh', '0.0.0.0', 'supervisor', 'supervisor', 'evsfs', 'list'):
@ -376,6 +378,14 @@ class HDSHNASBendTest(test.TestCase):
'ssh', '0.0.0.0', 'supervisor', 'supervisor',
'df', '-a')
m_utl.side_effect = putils.ProcessExecutionError(stdout='',
stderr=HNAS_RESULT27,
exit_code=255)
self.hnas_bend.drv_configs['ssh_enabled'] = 'False'
self.assertRaises(exception.HNASConnError, self.hnas_bend.run_cmd,
'ssh', '0.0.0.0', 'supervisor', 'supervisor',
'df', '-a')
# Test exception throwing when using SSH
m_ssh.side_effect = putils.ProcessExecutionError(stdout='',
stderr=HNAS_RESULT22,

View File

@ -68,8 +68,12 @@ class HnasBackend(object):
LOG.debug("SSC connection error!")
msg = _("Failed to establish SSC connection.")
raise exception.HNASConnError(msg)
elif 'Connection reset' in e.stderr:
LOG.debug("HNAS connection reset!")
msg = _("HNAS has disconnected SSC")
raise exception.HNASConnError(msg)
else:
raise putils.ProcessExecutionError
raise
else:
if self.drv_configs['cluster_admin_ip0'] is None: