Erhan Kesken created MESOS-4084:
-----------------------------------

             Summary: mesos-slave assigned marathon task wrongly to chronos 
framework after task failure
                 Key: MESOS-4084
                 URL: https://issues.apache.org/jira/browse/MESOS-4084
             Project: Mesos
          Issue Type: Bug
          Components: slave
    Affects Versions: 0.22.2
         Environment: Ubuntu 14.04.2 LTS
Mesos 0.22.2
Marathon 0.11.0
Chronos 2.4.0
            Reporter: Erhan Kesken
            Priority: Minor


I don't know how to reproduce problem, only thing I can do, is sharing my logs:

https://gist.github.com/ekesken/f2edfd65cca8638b0136

These are highlights from my logs:

mesos-slave logs:
{noformat}
Dec  7 08:58:27 mesos-slave-node-012 mesos-slave[56099]: I1207 08:58:27.089156 
56130 slave.cpp:2531] Handling status update TASK_FAILED (UUID: 
5b335fab-1722-4270-83a6-b4ec843be47f) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
of framework 20151113-112010-100670892-5050-7957-0001 from 
executor(1)@172.29.1.12:1651
08:58:27 mesos-slave-node-012 mesos-slave[56099]: E1207 08:58:27.089874 56128 
slave.cpp:2662] Failed to update resources for container 
ed5f4f67-464d-4786-9628-cd48732de6b7 of executor 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
running task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
on status update for terminal task, destroying container: Failed to determine 
cgroup for the 'cpu' subsystem: Failed to read /proc/34074/cgroup: Failed to 
open file '/proc/34074/cgroup': No such file or directory
{noformat}

notice the framework id above, then 5m later we got following logs:

{noformat}
Dec  7 09:03:27 mesos-slave-node-012 mesos-slave[56099]: I1207 09:03:27.653187 
56130 slave.cpp:2531] Handling status update TASK_RUNNING (UUID: 
81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001 
from executor(1)@172.29.1.12:1651
Dec  7 09:03:27 mesos-slave-node-012 mesos-slave[56099]: W1207 09:03:27.653282 
56130 slave.cpp:2568] Could not find the executor for status update 
TASK_RUNNING (UUID: 81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001
Dec  7 09:03:27 mesos-slave-node-012 mesos-slave[56099]: I1207 09:03:27.653390 
56130 status_update_manager.cpp:317] Received status update TASK_RUNNING (UUID: 
81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001
Dec  7 09:03:27 mesos-slave-node-012 mesos-slave[56099]: I1207 09:03:27.653543 
56130 slave.cpp:2776] Forwarding the update TASK_RUNNING (UUID: 
81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001 
to [email protected]:5050
Dec  7 09:03:27 mesos-slave-node-012 mesos-slave[56099]: I1207 09:03:27.653688 
56130 slave.cpp:2709] Sending acknowledgement for status update TASK_RUNNING 
(UUID: 81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001 
to executor(1)@172.29.1.12:1651
Dec  7 09:03:37 mesos-slave-node-012 mesos-slave[56099]: W1207 09:03:37.654337 
56134 status_update_manager.cpp:472] Resending status update TASK_RUNNING 
(UUID: 81aee6b0-2b9d-470a-a543-f14f7cae699b) for task 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
in health state unhealthy of framework 20150624-210230-117448108-5050-3678-0001
{noformat} 

this caused deactivation of chronos immediately as seen on mesos-master log:

{noformat}
Dec  7 09:03:27 mesos-master-node-001 mesos-master[40898]: I1207 
09:03:27.654770 40948 master.cpp:1964] Deactivating framework 
20150624-210230-117448108-5050-3678-0001 (chronos-2.4.0) at 
[email protected]:11893
Dec  7 09:03:27 mesos-master-node-001 mesos-master[40898]: I1207 
09:03:27.654989 40948 hierarchical.hpp:400] Deactivated framework 
20150624-210230-117448108-5050-3678-0001
{noformat}

no clue at chronos log at that time, but when we restart chronos master, we got 
these logs:

{noformat}
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: Exception in thread 
"Thread-62550" scala.MatchError: 
collector_tr_insurance_ebv_facebookscraper.ab3ddc6b-9cc0-11e5-8f21-0242ec411128 
(of class java.lang.String)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
org.apache.mesos.chronos.scheduler.jobs.TaskUtils$.parseTaskId(TaskUtils.scala:132)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
org.apache.mesos.chronos.scheduler.mesos.MesosJobFramework.statusUpdate(MesosJobFramework.scala:215)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
java.lang.reflect.Method.invoke(Method.java:497)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: #011at 
com.sun.proxy.$Proxy31.statusUpdate(Unknown Source)
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: I1207 12:35:25.238782 
15035 sched.cpp:1623] Asked to abort the driver
Dec  7 12:35:25 mesos-master-node-003 chronos[15003]: I1207 12:35:25.238836 
15035 sched.cpp:856] Aborting framework 
'20150624-210230-117448108-5050-3678-0001'
{noformat}

Problem is solved by following commands in problematic slave:

{noformat}
service mesos-slave stop
rm -fr /tmp/mesos
service mesos-slave start
{noformat}

I needed to restart chronos master to reactivate framework, I don't know if 
there is a way to reactivate framework manually rather than restarting master 
node.

I guess this issue https://github.com/mesos/chronos/issues/569 opened in 
chronos project is related with this bug too.




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

Reply via email to