Michael Kublin has uploaded a new change for review.

Change subject: engine: Improving GetAsyncTasksByStoragePoolId query
......................................................................

engine: Improving GetAsyncTasksByStoragePoolId query

The following patch will simplify a query, we don't need to make any join,
access to async_tasks table is enought

Change-Id: I295291a2ac84e021b7354a3fd072ba5534af533d
Signed-off-by: Michael Kublin <[email protected]>
---
M backend/manager/dbscripts/async_tasks_sp.sql
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/AsyncTaskDAOTest.java
2 files changed, 5 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/15/13615/1

diff --git a/backend/manager/dbscripts/async_tasks_sp.sql 
b/backend/manager/dbscripts/async_tasks_sp.sql
index 78d63f0..3de682c 100644
--- a/backend/manager/dbscripts/async_tasks_sp.sql
+++ b/backend/manager/dbscripts/async_tasks_sp.sql
@@ -110,9 +110,8 @@
 RETURNS SETOF idUuidType
   AS $procedure$
 BEGIN
-   RETURN QUERY SELECT task_ent.async_task_id
-   FROM  storage_pool_iso_map sd_map
-   JOIN async_tasks_entities task_ent ON sd_map.storage_id = task_ent.entity_id
+   RETURN QUERY SELECT async_tasks.task_id
+   FROM  async_tasks
    WHERE storage_pool_id = v_storage_pool_id;
 END; $procedure$
 LANGUAGE plpgsql;
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/AsyncTaskDAOTest.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/AsyncTaskDAOTest.java
index 047c2ac..080b679 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/AsyncTaskDAOTest.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/AsyncTaskDAOTest.java
@@ -97,7 +97,7 @@
         // that has storage domain associated to which has one task on it
         List<Guid> guids = 
dao.getAsyncTaskIdsByStoragePoolId(FixturesTool.STORAGE_POOL_RHEL6_ISCSI_OTHER);
         assertNotNull(guids);
-        assertEquals(guids.size(), 1);
+        assertEquals(guids.size(), 2);
     }
 
     @Test
@@ -216,13 +216,13 @@
         List<AsyncTasks> tasks = dao.getAll();
         assertNotNull(tasks);
         int tasksNumber = tasks.size();
-        dao.saveOrUpdate(existingAsyncTask);
+        dao.saveOrUpdate(existingAsyncTask, VdcObjectType.Disk);
         tasks = dao.getAll();
         assertEquals(tasksNumber, tasks.size());
         AsyncTasks taskFromDb = dao.get(existingAsyncTask.gettask_id());
         assertNotNull(taskFromDb);
         assertEquals(taskFromDb,existingAsyncTask);
-        dao.saveOrUpdate(newAsyncTask);
+        dao.saveOrUpdate(newAsyncTask, VdcObjectType.Disk, Guid.NewGuid());
         tasks = dao.getAll();
         assertNotNull(tasks);
         assertEquals(tasksNumber+1, tasks.size());


--
To view, visit http://gerrit.ovirt.org/13615
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I295291a2ac84e021b7354a3fd072ba5534af533d
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Michael Kublin <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to