diff --git a/SAS/ResourceAssignment/OTDBtoRATaskStatusPropagator/propagator.py b/SAS/ResourceAssignment/OTDBtoRATaskStatusPropagator/propagator.py
index 58b5cb7bcf4e2389b5acc6ebdacdf279fd6eae4f..ffa1a3de5ab1d00a71e9ebbaeb75a18324a802fa 100644
--- a/SAS/ResourceAssignment/OTDBtoRATaskStatusPropagator/propagator.py
+++ b/SAS/ResourceAssignment/OTDBtoRATaskStatusPropagator/propagator.py
@@ -59,15 +59,23 @@ class OTDBtoRATaskStatusPropagator(OTDBBusListener):
         try:
             radb_task = self.radb.getTask(otdb_id=treeId)
             if radb_task:
-                spec = self.otdb.taskGetSpecification(otdb_id=treeId)['specification']
-                new_startime = spec['ObsSW.Observation.startTime']
-                new_endtime = spec['ObsSW.Observation.stopTime']
-
-                new_startime = datetime.strptime(new_startime, ('%Y-%m-%d %H:%M:%S.%f' if '.' in new_startime else '%Y-%m-%d %H:%M:%S'))
-                new_endtime = datetime.strptime(new_endtime, ('%Y-%m-%d %H:%M:%S.%f' if '.' in new_endtime else '%Y-%m-%d %H:%M:%S'))
-
-                logger.info("Updating task (otdb_id=%s, radb_id=%s, status=%s) startime to \'%s\' and endtime to \'%s\'", treeId, radb_task['id'], radb_task['status'], new_startime, new_endtime)
-                self.radb.updateTaskAndResourceClaims(radb_task['id'], starttime=new_startime, endtime=new_endtime)
+                # all CEP4 tasks have storage claim(s)
+                # and we do not want OTDB to update our RA scheduled tasks
+                # so check if we have storage claims
+                claims = self.radb.getResourceClaims(task_ids=radb_task['id'], resource_type='storage')
+
+                if not claims:
+                    #this is a CEP2 task, modified by the old scheduler
+                    #update start/stop time
+                    spec = self.otdb.taskGetSpecification(otdb_id=treeId)['specification']
+                    new_startime = spec['ObsSW.Observation.startTime']
+                    new_endtime = spec['ObsSW.Observation.stopTime']
+
+                    new_startime = datetime.strptime(new_startime, ('%Y-%m-%d %H:%M:%S.%f' if '.' in new_startime else '%Y-%m-%d %H:%M:%S'))
+                    new_endtime = datetime.strptime(new_endtime, ('%Y-%m-%d %H:%M:%S.%f' if '.' in new_endtime else '%Y-%m-%d %H:%M:%S'))
+
+                    logger.info("Updating task (otdb_id=%s, radb_id=%s, status=%s) startime to \'%s\' and endtime to \'%s\'", treeId, radb_task['id'], radb_task['status'], new_startime, new_endtime)
+                    self.radb.updateTaskAndResourceClaims(radb_task['id'], starttime=new_startime, endtime=new_endtime)
         except Exception as e:
             logger.error(e)