-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/7182/
-----------------------------------------------------------

(Updated Oct. 9, 2012, 7:45 a.m.)


Review request for mesos, Benjamin Hindman and Vinod Kone.


Changes
-------

Alright, updated the Java and Python frameworks as well.

NOTE: We still have a deadlock in the SampleFrameworks.CppFramework test, this 
time no longer due to the VLOG (since r/7183 is submitted).
I can reproduce this consistently on my mac when run from the tests.

Here's the current state of the test-framework when it's running:
(gdb) thread apply all bt

Thread 6 (process 9878):
#0  0x00007fff856afdf2 in select$DARWIN_EXTSN ()
#1  0x00000001003510ab in select_poll (loop=0x20, 
timeout=2.1341964219347834e-314) at ev_select.c:168
#2  0x000000010035503c in ev_loop () at ev_kqueue.c:108
#3  0x00000001001c413f in process::serve () at boost_shared_ptr.h:152
#4  0x00007fff857098bf in _pthread_start ()
#5  0x00007fff8570cb75 in thread_start ()

Thread 5 (process 9878):
#0  0x00007fff856afbca in __psynch_cvwait ()
#1  0x00007fff8570d274 in _pthread_cond_wait ()
#2  0x0000000100253692 in Gate::arrive () at stl_deque.h:441
#3  0x00000001001cbb1f in process::schedule () at boost_shared_ptr.h:152
#4  0x00007fff857098bf in _pthread_start ()
#5  0x00007fff8570cb75 in thread_start ()

Thread 4 (process 9878):
#0  0x00007fff856afbca in __psynch_cvwait ()
#1  0x00007fff8570d274 in _pthread_cond_wait ()
#2  0x0000000100253692 in Gate::arrive () at stl_deque.h:441
#3  0x00000001001cbb1f in process::schedule () at boost_shared_ptr.h:152
#4  0x00007fff857098bf in _pthread_start ()
#5  0x00007fff8570cb75 in thread_start ()

Thread 3 (process 9878):
#0  0x00007fff856afbca in __psynch_cvwait ()
#1  0x00007fff8570d274 in _pthread_cond_wait ()
#2  0x0000000100253692 in Gate::arrive () at stl_deque.h:441
#3  0x00000001001cbb1f in process::schedule () at boost_shared_ptr.h:152
#4  0x00007fff857098bf in _pthread_start ()
#5  0x00007fff8570cb75 in thread_start ()

Thread 2 (process 9878):
#0  0x00007fff856afbca in __psynch_cvwait ()
#1  0x00007fff8570d274 in _pthread_cond_wait ()
#2  0x0000000100253692 in Gate::arrive () at stl_deque.h:441
#3  0x00000001001cbb1f in process::schedule () at boost_shared_ptr.h:152
#4  0x00007fff857098bf in _pthread_start ()
#5  0x00007fff8570cb75 in thread_start ()

Thread 1 (process 9878):
#0  0x00007fff856afbca in __psynch_cvwait ()
#1  0x00007fff8570d274 in _pthread_cond_wait ()
#2  0x000000010001216b in mesos::MesosSchedulerDriver::join 
(this=0x7fff5fbff590) at sched.cpp:823
#3  0x0000000100001e64 in main (argc=1606415912, argv=0x7fff5fbff858) at 
test_framework.cpp:193


And here is sched.cpp:823:
Status MesosSchedulerDriver::join()
{
  Lock lock(&mutex);

  if (status != DRIVER_RUNNING) {
    return status;
  }

  while (status == DRIVER_RUNNING) {
    pthread_cond_wait(&cond, &mutex); // LINE 823
  }

  CHECK(status == DRIVER_ABORTED || status == DRIVER_STOPPED);

  return status;
}


Description
-------

This ensures the binary gets placed in the work dir rather than running from 
the build dir.


Diffs (updated)
-----

  src/examples/balloon_framework.cpp e9b60de0c7d3a96381aff37340e0f5ac499850dd 
  src/examples/java/TestFramework.java 8417394487a80b439e7d9897c83f0b2c1eb17ff4 
  src/examples/long_lived_framework.cpp 
04ac678387dd78104b5d42fa1f7b5de1849b0701 
  src/examples/python/test_framework.py 
f436865b32c555a593e7cbb2c35b8cdae439932a 
  src/examples/test_framework.cpp b9ab692414e4df64f176fc1ecd05f24ff089bde0 

Diff: https://reviews.apache.org/r/7182/diff/


Testing
-------

make check (although, the frameworks hang due to the executor launcher VLOG 
locking bug, about to be fixed by vinod)


Thanks,

Ben Mahler

Reply via email to