You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@aurora.apache.org by "Bill Farner (JIRA)" <ji...@apache.org> on 2016/01/25 20:31:39 UTC

[jira] [Created] (AURORA-1594) End-to-end test is broken

Bill Farner created AURORA-1594:
-----------------------------------

             Summary: End-to-end test is broken
                 Key: AURORA-1594
                 URL: https://issues.apache.org/jira/browse/AURORA-1594
             Project: Aurora
          Issue Type: Bug
          Components: Scheduler
            Reporter: Bill Farner
            Priority: Blocker


{noformat}
+ aurora job create devcluster/vagrant/test/http_example /vagrant/src/test/sh/org/apache/aurora/e2e/http/http_example.aurora
 WARN]
WARNING: endpoint, expected_response, and expected_response_code are deprecated and will be removed
in the next release. Please consult updated documentation.

 INFO] Creating job http_example
 WARN] Could not connect to scheduler: No schedulers detected in devcluster!
 WARN] Could not connect to scheduler: No schedulers detected in devcluster!
Job creation failed due to error:
	java.lang.IllegalArgumentException: Multiple entries with same key: ITaskConfig{job=IJobKey{role=vagrant, environment=test, name=http_example}, owner=IIdentity{role=null, user=vagrant}, environment=null, jobName=null, isService=true, numCpus=0.4, ramMb=32, diskMb=64, priority=0, maxTaskFailures=1, production=false, tier=null, constraints=[], requestedPorts=[http], taskLinks={http=http://%host%:%port:http%}, contactEmail=vagrant@localhost, executorConfig=IExecutorConfig{name=AuroraExecutor, data={"environment": "test", "health_check_config": {"expected_response_code": 0, "endpoint": "/health", "health_checker": {"http": {"expected_response_code": 0, "endpoint": "/health", "expected_response": "ok"}}, "initial_interval_secs": 5.0, "expected_response": "ok", "max_consecutive_failures": 0, "timeout_secs": 1.0, "interval_secs": 1.0}, "name": "http_example", "service": true, "max_task_failures": 1, "cron_collision_policy": "KILL_EXISTING", "enable_hooks": false, "cluster": "devcluster", "task": {"processes": [{"daemon": false, "name": "stage_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "cp /vagrant/src/test/sh/org/apache/aurora/e2e/http_example.py .", "final": false}, {"daemon": false, "name": "run_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "python http_example.py {{thermos.ports[http]}}", "final": false}], "name": "http_example", "finalization_wait": 30, "max_failures": 1, "max_concurrency": 0, "resources": {"disk": 67108864, "ram": 33554432, "cpu": 0.4}, "constraints": [{"order": ["stage_server", "run_server"]}]}, "production": false, "role": "vagrant", "contact": "vagrant@localhost", "announce": {"primary_port": "http", "portmap": {"aurora": "http"}}, "lifecycle": {"http": {"graceful_shutdown_endpoint": "/quitquitquit", "port": "health", "shutdown_endpoint": "/abortabortabort"}}, "priority": 0}}, metadata=[], container=IContainer{setField=MESOS, value=IMesosContainer{}}}=org.apache.aurora.scheduler.storage.db.views.DbTaskConfig@7b345c31 and ITaskConfig{job=IJobKey{role=vagrant, environment=test, name=http_example}, owner=IIdentity{role=null, user=vagrant}, environment=null, jobName=null, isService=true, numCpus=0.4, ramMb=32, diskMb=64, priority=0, maxTaskFailures=1, production=false, tier=null, constraints=[], requestedPorts=[http], taskLinks={http=http://%host%:%port:http%}, contactEmail=vagrant@localhost, executorConfig=IExecutorConfig{name=AuroraExecutor, data={"environment": "test", "health_check_config": {"expected_response_code": 0, "endpoint": "/health", "health_checker": {"http": {"expected_response_code": 0, "endpoint": "/health", "expected_response": "ok"}}, "initial_interval_secs": 5.0, "expected_response": "ok", "max_consecutive_failures": 0, "timeout_secs": 1.0, "interval_secs": 1.0}, "name": "http_example", "service": true, "max_task_failures": 1, "cron_collision_policy": "KILL_EXISTING", "enable_hooks": false, "cluster": "devcluster", "task": {"processes": [{"daemon": false, "name": "stage_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "cp /vagrant/src/test/sh/org/apache/aurora/e2e/http_example.py .", "final": false}, {"daemon": false, "name": "run_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "python http_example.py {{thermos.ports[http]}}", "final": false}], "name": "http_example", "finalization_wait": 30, "max_failures": 1, "max_concurrency": 0, "resources": {"disk": 67108864, "ram": 33554432, "cpu": 0.4}, "constraints": [{"order": ["stage_server", "run_server"]}]}, "production": false, "role": "vagrant", "contact": "vagrant@localhost", "announce": {"primary_port": "http", "portmap": {"aurora": "http"}}, "lifecycle": {"http": {"graceful_shutdown_endpoint": "/quitquitquit", "port": "health", "shutdown_endpoint": "/abortabortabort"}}, "priority": 0}}, metadata=[], container=IContainer{setField=MESOS, value=IMesosContainer{}}}=org.apache.aurora.scheduler.storage.db.views.DbTaskConfig@7ac8690c. To index multiple values under a key, use Multimaps.index.
+ collect_result
+ [[ 1 = 0 ]]
+ echo '!!! FAIL (something returned non-zero) for [[ $RETCODE = 0 ]]'
{noformat}

Stack trace:
{noformat}
W0125 19:27:57.158 [qtp2075195635-126, LoggingInterceptor:78] Uncaught exception while handling createJob(JobConfiguration(key:JobKey(role:vagrant, environment:test, name:ht
tp_example), owner:Identity(role:vagrant, user:vagrant), cronSchedule:null, cronCollisionPolicy:KILL_EXISTING, taskConfig:TaskConfig(job:JobKey(role:vagrant, environment:tes
t, name:http_example), owner:Identity(role:vagrant, user:vagrant), environment:test, jobName:http_example, isService:true, numCpus:0.4, ramMb:32, diskMb:64, priority:0, maxT
askFailures:1, production:false, constraints:[], requestedPorts:[http], taskLinks:{}, contactEmail:vagrant@localhost, executorConfig:ExecutorConfig(name:BLANKED, data:BLANKE
D), metadata:[], container:<Container mesos:MesosContainer()>), instanceCount:2), null) com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalArgum
entException: Multiple entries with same key: ITaskConfig{job=IJobKey{role=vagrant, environment=test, name=http_example}, owner=IIdentity{role=null, user=vagrant}, environme
nt=null, jobName=null, isService=true, numCpus=0.4, ramMb=32, diskMb=64, priority=0, maxTaskFailures=1, production=false, tier=null, constraints=[], requestedPorts=[http], taskLinks={http=http://%host%:%port:http%}, contactEmail=vagrant@localhost, executorConfig=IExecutorConfig{name=AuroraExecutor, data={"environment": "test", "health_check_config": {"expected_response_code": 0, "endpoint": "/health", "health_checker": {"http": {"expected_response_code": 0, "endpoint": "/health", "expected_response": "ok"}}, "initial_interval_secs": 5.0, "expected_response": "ok", "max_consecutive_failures": 0, "timeout_secs": 1.0, "interval_secs": 1.0}, "name": "http_example", "service": true, "max_task_failures": 1, "cron_collision_policy": "KILL_EXISTING", "enable_hooks": false, "cluster": "devcluster", "task": {"processes": [{"daemon": false, "name": "stage_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "cp /vagrant/src/test/sh/org/apache/aurora/e2e/http_example.py .", "final": false}, {"daemon": false, "name": "run_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "python http_example.py {{thermos.ports[http]}}", "final": false}], "name": "http_example", "finalization_wait": 30, "max_failures": 1, "max_concurrency": 0, "resources": {"disk": 67108864, "ram": 33554432, "cpu": 0.4}, "constraints": [{"order": ["stage_server", "run_server"]}]}, "production": false, "role": "vagrant", "contact": "vagrant@localhost", "announce": {"primary_port": "http", "portmap": {"aurora": "http"}}, "lifecycle": {"http": {"graceful_shutdown_endpoint": "/quitquitquit", "port": "health", "shutdown_endpoint": "/abortabortabort"}}, "priority": 0}}, metadata=[], container=IContainer{setField=MESOS, value=IMesosContainer{}}}=org.apache.aurora.scheduler.storage.db.views.DbTaskConfig@7b345c31 and ITaskConfig{job=IJobKey{role=vagrant, environment=test, name=http_example}, owner=IIdentity{role=null, user=vagrant}, environment=null, jobName=null, isService=true, numCpus=0.4, ramMb=32, diskMb=64, priority=0, maxTaskFailures=1, production=false, tier=null, constraints=[], requestedPorts=[http], taskLinks={http=http://%host%:%port:http%}, contactEmail=vagrant@localhost, executorConfig=IExecutorConfig{name=AuroraExecutor, data={"environment": "test", "health_check_config": {"expected_response_code": 0, "endpoint": "/health", "health_checker": {"http": {"expected_response_code": 0, "endpoint": "/health", "expected_response": "ok"}}, "initial_interval_secs": 5.0, "expected_response": "ok", "max_consecutive_failures": 0, "timeout_secs": 1.0, "interval_secs": 1.0}, "name": "http_example", "service": true, "max_task_failures": 1, "cron_collision_policy": "KILL_EXISTING", "enable_hooks": false, "cluster": "devcluster", "task": {"processes": [{"daemon": false, "name": "stage_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "cp /vagrant/src/test/sh/org/apache/aurora/e2e/http_example.py .", "final": false}, {"daemon": false, "name": "run_server", "ephemeral": false, "max_failures": 1, "min_duration": 5, "cmdline": "python http_example.py {{thermos.ports[http]}}", "final": false}], "name": "http_example", "finalization_wait": 30, "max_failures": 1, "max_concurrency": 0, "resources": {"disk": 67108864, "ram": 33554432, "cpu": 0.4}, "constraints": [{"order": ["stage_server", "run_server"]}]}, "production": false, "role": "vagrant", "contact": "vagrant@localhost", "announce": {"primary_port": "http", "portmap": {"aurora": "http"}}, "lifecycle": {"http": {"graceful_shutdown_endpoint": "/quitquitquit", "port": "health", "shutdown_endpoint": "/abortabortabort"}}, "priority": 0}}, metadata=[], container=IContainer{setField=MESOS, value=IMesosContainer{}}}=org.apache.aurora.scheduler.storage.db.views.DbTaskConfig@7ac8690c. To index multiple values under a key, use Multimaps.index.
        at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2207) ~[guava-19.0.jar:na]
        at com.google.common.cache.LocalCache.get(LocalCache.java:3953) ~[guava-19.0.jar:na]
        at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3957) ~[guava-19.0.jar:na]
        at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4875) ~[guava-19.0.jar:na]
        at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4881) ~[guava-19.0.jar:na]
        at org.apache.aurora.scheduler.storage.db.DbTaskStore.saveTasks(DbTaskStore.java:135) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.common.inject.TimedInterceptor.invoke(TimedInterceptor.java:83) ~[commons-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.db.DbTaskStore.mutateTasks(DbTaskStore.java:179) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.common.inject.TimedInterceptor.invoke(TimedInterceptor.java:83) ~[commons-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.log.WriteAheadStorage.mutateTasks(WriteAheadStorage.java:203) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.state.StateManagerImpl.updateTaskAndExternalState(StateManagerImpl.java:303) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.state.StateManagerImpl.insertPendingTasks(StateManagerImpl.java:137) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.thrift.SchedulerThriftInterface.lambda$createJob$0(SchedulerThriftInterface.java:244) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.log.LogStorage.lambda$doInTransaction$23(LogStorage.java:526) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.db.DbStorage.transactionedWrite(DbStorage.java:146) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.mybatis.guice.transactional.TransactionalMethodInterceptor.invoke(TransactionalMethodInterceptor.java:101) ~[mybatis-guice-3.7.jar:3.7]
        at org.apache.aurora.scheduler.storage.db.DbStorage.lambda$write$0(DbStorage.java:160) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.async.GatingDelayExecutor.closeDuring(GatingDelayExecutor.java:62) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.db.DbStorage.write(DbStorage.java:158) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.common.inject.TimedInterceptor.invoke(TimedInterceptor.java:83) ~[commons-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.log.LogStorage.doInTransaction(LogStorage.java:525) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.log.LogStorage.write(LogStorage.java:555) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.storage.CallOrderEnforcingStorage.write(CallOrderEnforcingStorage.java:128) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.thrift.SchedulerThriftInterface.createJob(SchedulerThriftInterface.java:225) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.thrift.aop.ThriftStatsExporterInterceptor.invoke(ThriftStatsExporterInterceptor.java:47) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.thrift.aop.LoggingInterceptor.invoke(LoggingInterceptor.java:70) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.thrift.aop.ServerInfoInterceptor.invoke(ServerInfoInterceptor.java:30) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.http.api.security.ShiroAuthorizingParamInterceptor.invoke(ShiroAuthorizingParamInterceptor.java:319) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.scheduler.http.api.security.ShiroAuthenticatingThriftInterceptor.invoke(ShiroAuthenticatingThriftInterceptor.java:55) ~[aurora-0.12.0-SNAPSHOT.jar:na]
        at org.apache.aurora.gen.AuroraSchedulerManager$Processor$createJob.getResult(AuroraSchedulerManager.java:1169) [aurora-api-0.12.0-SNAPSHOT.jar:na]
{noformat}


Git-bisect points at this commit:
{noformat}
commit b2cc604 (HEAD, refs/bisect/bad)
Author: Bill Farner <wf...@apache.org>
Date:   Thu Jan 21 14:30:28 2016 -0800

    Enable READ COMMITTED transaction isolation.

    Bugs closed: AURORA-1580

    Reviewed at https://reviews.apache.org/r/42613/
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)