Search in sources :

Example 1 with JobStore

use of com.netflix.titus.api.jobmanager.store.JobStore in project titus-control-plane by Netflix.

the class CassandraJobStoreTest method testRetrieveArchivedJob.

private void testRetrieveArchivedJob(boolean archive) {
    JobStore store = getJobStore();
    Job<BatchJobExt> job = createFinishedBatchJobObject();
    store.init().await();
    store.storeJob(job).await();
    if (archive) {
        store.deleteJob(job).await();
    }
    Job archivedJob = store.retrieveArchivedJob(job.getId()).toBlocking().first();
    checkRetrievedJob(job, archivedJob);
}
Also used : BatchJobExt(com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt) JobStore(com.netflix.titus.api.jobmanager.store.JobStore) Job(com.netflix.titus.api.jobmanager.model.job.Job)

Example 2 with JobStore

use of com.netflix.titus.api.jobmanager.store.JobStore in project titus-control-plane by Netflix.

the class CassandraJobStoreTest method testRetrieveArchivedTaskCountForJob.

@Test
public void testRetrieveArchivedTaskCountForJob() {
    JobStore store = getJobStore();
    Job<BatchJobExt> job = createFinishedBatchJobObject();
    store.init().await();
    store.storeJob(job).await();
    Pair<List<Job<?>>, Integer> jobsAndErrors = store.retrieveJobs().toBlocking().first();
    checkRetrievedJob(job, jobsAndErrors.getLeft().get(0));
    Task task = createFinishedTaskObject(job);
    store.storeTask(task).await();
    store.deleteTask(task).await();
    Long count = store.retrieveArchivedTaskCountForJob(job.getId()).toBlocking().first();
    assertThat(count).isEqualTo(1);
}
Also used : BatchJobTask(com.netflix.titus.api.jobmanager.model.job.BatchJobTask) Task(com.netflix.titus.api.jobmanager.model.job.Task) ServiceJobTask(com.netflix.titus.api.jobmanager.model.job.ServiceJobTask) BatchJobExt(com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt) JobStore(com.netflix.titus.api.jobmanager.store.JobStore) ArrayList(java.util.ArrayList) List(java.util.List) Test(org.junit.Test) IntegrationNotParallelizableTest(com.netflix.titus.testkit.junit.category.IntegrationNotParallelizableTest)

Example 3 with JobStore

use of com.netflix.titus.api.jobmanager.store.JobStore in project titus-control-plane by Netflix.

the class CassandraJobStoreTest method testDeleteArchivedTask.

@Test
public void testDeleteArchivedTask() {
    JobStore store = getJobStore();
    Job<BatchJobExt> job = createFinishedBatchJobObject();
    store.init().await();
    store.storeJob(job).await();
    Pair<List<Job<?>>, Integer> jobsAndErrors = store.retrieveJobs().toBlocking().first();
    checkRetrievedJob(job, jobsAndErrors.getLeft().get(0));
    Task task = createFinishedTaskObject(job);
    store.storeTask(task).await();
    store.deleteTask(task).await();
    Long count = store.retrieveArchivedTaskCountForJob(job.getId()).toBlocking().first();
    assertThat(count).isEqualTo(1);
    store.deleteArchivedTask(job.getId(), task.getId()).await();
    Long count2 = store.retrieveArchivedTaskCountForJob(job.getId()).toBlocking().first();
    assertThat(count2).isEqualTo(0);
}
Also used : BatchJobTask(com.netflix.titus.api.jobmanager.model.job.BatchJobTask) Task(com.netflix.titus.api.jobmanager.model.job.Task) ServiceJobTask(com.netflix.titus.api.jobmanager.model.job.ServiceJobTask) BatchJobExt(com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt) JobStore(com.netflix.titus.api.jobmanager.store.JobStore) ArrayList(java.util.ArrayList) List(java.util.List) Test(org.junit.Test) IntegrationNotParallelizableTest(com.netflix.titus.testkit.junit.category.IntegrationNotParallelizableTest)

Example 4 with JobStore

use of com.netflix.titus.api.jobmanager.store.JobStore in project titus-control-plane by Netflix.

the class CassandraJobStoreTest method testStoreJob.

@Test
public void testStoreJob() {
    JobStore store = getJobStore();
    Job<BatchJobExt> job = createBatchJobObject();
    store.init().await();
    store.storeJob(job).await();
    Pair<List<Job<?>>, Integer> jobsAndErrors = store.retrieveJobs().toBlocking().first();
    checkRetrievedJob(job, jobsAndErrors.getLeft().get(0));
}
Also used : BatchJobExt(com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt) JobStore(com.netflix.titus.api.jobmanager.store.JobStore) ArrayList(java.util.ArrayList) List(java.util.List) Test(org.junit.Test) IntegrationNotParallelizableTest(com.netflix.titus.testkit.junit.category.IntegrationNotParallelizableTest)

Example 5 with JobStore

use of com.netflix.titus.api.jobmanager.store.JobStore in project titus-control-plane by Netflix.

the class CassandraJobStoreTest method testRetrieveTask.

@Test
public void testRetrieveTask() {
    JobStore store = getJobStore();
    Job<BatchJobExt> job = createBatchJobObject();
    store.init().await();
    store.storeJob(job).await();
    Pair<List<Job<?>>, Integer> jobsAndErrors = store.retrieveJobs().toBlocking().first();
    checkRetrievedJob(job, jobsAndErrors.getLeft().get(0));
    Task task = createTaskObject(job);
    store.storeTask(task).await();
    Task retrievedTask = store.retrieveTask(task.getId()).toBlocking().first();
    checkRetrievedTask(task, retrievedTask);
    // Check that archive access does not return anything.
    try {
        store.retrieveArchivedTask(task.getId()).toBlocking().first();
        fail("Should not return active task");
    } catch (JobStoreException e) {
        assertThat(e.getErrorCode()).isEqualTo(JobStoreException.ErrorCode.TASK_DOES_NOT_EXIST);
    }
}
Also used : BatchJobTask(com.netflix.titus.api.jobmanager.model.job.BatchJobTask) Task(com.netflix.titus.api.jobmanager.model.job.Task) ServiceJobTask(com.netflix.titus.api.jobmanager.model.job.ServiceJobTask) JobStoreException(com.netflix.titus.api.jobmanager.store.JobStoreException) BatchJobExt(com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt) JobStore(com.netflix.titus.api.jobmanager.store.JobStore) ArrayList(java.util.ArrayList) List(java.util.List) Test(org.junit.Test) IntegrationNotParallelizableTest(com.netflix.titus.testkit.junit.category.IntegrationNotParallelizableTest)

Aggregations

JobStore (com.netflix.titus.api.jobmanager.store.JobStore)25 List (java.util.List)24 ArrayList (java.util.ArrayList)23 BatchJobExt (com.netflix.titus.api.jobmanager.model.job.ext.BatchJobExt)18 Task (com.netflix.titus.api.jobmanager.model.job.Task)17 IntegrationNotParallelizableTest (com.netflix.titus.testkit.junit.category.IntegrationNotParallelizableTest)14 Test (org.junit.Test)14 BatchJobTask (com.netflix.titus.api.jobmanager.model.job.BatchJobTask)13 ServiceJobTask (com.netflix.titus.api.jobmanager.model.job.ServiceJobTask)11 Job (com.netflix.titus.api.jobmanager.model.job.Job)8 TitusRuntime (com.netflix.titus.common.runtime.TitusRuntime)6 TaskState (com.netflix.titus.api.jobmanager.model.job.TaskState)5 TaskStatus (com.netflix.titus.api.jobmanager.model.job.TaskStatus)5 EntityHolder (com.netflix.titus.common.framework.reconciler.EntityHolder)5 ReconciliationEngine (com.netflix.titus.common.framework.reconciler.ReconciliationEngine)5 JobServiceRuntime (com.netflix.titus.master.jobmanager.service.JobServiceRuntime)5 VersionSupplier (com.netflix.titus.master.jobmanager.service.VersionSupplier)5 JobFunctions (com.netflix.titus.api.jobmanager.model.job.JobFunctions)4 JobState (com.netflix.titus.api.jobmanager.model.job.JobState)4 ServiceJobExt (com.netflix.titus.api.jobmanager.model.job.ext.ServiceJobExt)4