7f4c2a
From 44b0118984991c73e6552c267a35c4f0e2d4ea88 Mon Sep 17 00:00:00 2001
7f4c2a
From: Avra Sengupta <asengupt@redhat.com>
7f4c2a
Date: Thu, 4 Jun 2015 17:17:13 +0530
7f4c2a
Subject: [PATCH 44/57] snapshot/scheduler: Handle OSError in os. callbacks
7f4c2a
7f4c2a
        Backport of http://review.gluster.org/#/c/11087/
7f4c2a
7f4c2a
Handle OSError and not IOError in os. callbacks.
7f4c2a
7f4c2a
Change-Id: I2b5bfb629bacbd2d2e410d96034b4e2c11c4931e
7f4c2a
BUG: 1224249
7f4c2a
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
7f4c2a
(cherry picked from commit d835219a30327ede60e4ef28210914ab30bd0712)
7f4c2a
Reviewed-on: https://code.engineering.redhat.com/gerrit/50512
7f4c2a
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
7f4c2a
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
7f4c2a
---
7f4c2a
 extras/snap_scheduler/snap_scheduler.py |   16 ++++++++--------
7f4c2a
 1 files changed, 8 insertions(+), 8 deletions(-)
7f4c2a
7f4c2a
diff --git a/extras/snap_scheduler/snap_scheduler.py b/extras/snap_scheduler/snap_scheduler.py
7f4c2a
index 1c5f938..b692980 100755
7f4c2a
--- a/extras/snap_scheduler/snap_scheduler.py
7f4c2a
+++ b/extras/snap_scheduler/snap_scheduler.py
7f4c2a
@@ -129,7 +129,7 @@ def enable_scheduler():
7f4c2a
                     f = os.open(GCRON_ENABLED, os.O_CREAT | os.O_NONBLOCK,
7f4c2a
                                 0644)
7f4c2a
                     os.close(f)
7f4c2a
-                except IOError as (errno, strerror):
7f4c2a
+                except OSError as (errno, strerror):
7f4c2a
                     log.error("Failed to open %s. Error: %s.",
7f4c2a
                               GCRON_ENABLED, strerror)
7f4c2a
                     ret = INTERNAL_ERROR
7f4c2a
@@ -139,7 +139,7 @@ def enable_scheduler():
7f4c2a
                 log.info("Snapshot scheduling is enabled")
7f4c2a
                 output("Snapshot scheduling is enabled")
7f4c2a
                 ret = 0
7f4c2a
-            except IOError as (errno, strerror):
7f4c2a
+            except OSError as (errno, strerror):
7f4c2a
                 print_str = "Failed to enable snapshot scheduling. Error: "+strerror
7f4c2a
                 log.error(print_str)
7f4c2a
                 output(print_str)
7f4c2a
@@ -188,7 +188,7 @@ def disable_scheduler():
7f4c2a
                 log.info("Snapshot scheduling is disabled")
7f4c2a
                 output("Snapshot scheduling is disabled")
7f4c2a
                 ret = 0
7f4c2a
-            except IOError as (errno, strerror):
7f4c2a
+            except OSError as (errno, strerror):
7f4c2a
                 print_str = "Failed to disable snapshot scheduling. Error: "+strerror
7f4c2a
                 log.error(print_str)
7f4c2a
                 output(print_str)
7f4c2a
@@ -343,7 +343,7 @@ def add_schedules(jobname, schedule, volname):
7f4c2a
                 try:
7f4c2a
                     f = os.open(job_lockfile, os.O_CREAT | os.O_NONBLOCK, 0644)
7f4c2a
                     os.close(f)
7f4c2a
-                except IOError as (errno, strerror):
7f4c2a
+                except OSError as (errno, strerror):
7f4c2a
                     log.error("Failed to open %s. Error: %s.",
7f4c2a
                               job_lockfile, strerror)
7f4c2a
                     ret = INTERNAL_ERROR
7f4c2a
@@ -372,7 +372,7 @@ def delete_schedules(jobname):
7f4c2a
                 job_lockfile = LOCK_FILE_DIR+jobname
7f4c2a
                 try:
7f4c2a
                     os.remove(job_lockfile)
7f4c2a
-                except IOError as (errno, strerror):
7f4c2a
+                except OSError as (errno, strerror):
7f4c2a
                     log.error("Failed to open %s. Error: %s.",
7f4c2a
                               job_lockfile, strerror)
7f4c2a
                     ret = INTERNAL_ERROR
7f4c2a
@@ -630,7 +630,7 @@ def main():
7f4c2a
     if not os.path.exists(SHARED_STORAGE_DIR+"/snaps/"):
7f4c2a
         try:
7f4c2a
             os.makedirs(SHARED_STORAGE_DIR+"/snaps/")
7f4c2a
-        except IOError as (errno, strerror):
7f4c2a
+        except OSError as (errno, strerror):
7f4c2a
             if errno != EEXIST:
7f4c2a
                 log.error("Failed to create %s : %s", SHARED_STORAGE_DIR+"/snaps/", strerror)
7f4c2a
                 output("Failed to create %s. Error: %s"
7f4c2a
@@ -644,7 +644,7 @@ def main():
7f4c2a
     if not os.path.exists(LOCK_FILE_DIR):
7f4c2a
         try:
7f4c2a
             os.makedirs(LOCK_FILE_DIR)
7f4c2a
-        except IOError as (errno, strerror):
7f4c2a
+        except OSError as (errno, strerror):
7f4c2a
             if errno != EEXIST:
7f4c2a
                 log.error("Failed to create %s : %s", LOCK_FILE_DIR, strerror)
7f4c2a
                 output("Failed to create %s. Error: %s"
7f4c2a
@@ -666,7 +666,7 @@ def main():
7f4c2a
                    "Please try again after some time.")
7f4c2a
             return ANOTHER_TRANSACTION_IN_PROGRESS
7f4c2a
         os.close(f)
7f4c2a
-    except IOError as (errno, strerror):
7f4c2a
+    except OSError as (errno, strerror):
7f4c2a
         log.error("Failed to open %s : %s", LOCK_FILE, strerror)
7f4c2a
         output("Failed to open %s. Error: %s" % (LOCK_FILE, strerror))
7f4c2a
         return INTERNAL_ERROR
7f4c2a
-- 
7f4c2a
1.7.1
7f4c2a