Using breakpoints in multi-threaded PEs

When you use the sdb command in stand-alone mode, there is a thread for each source operator in the stream application. When you use the sdb command in a PE running on a Teracloud® Streams instance, there is a thread for each source operator that is fused into the PE.

Furthermore, in both stand-alone and distributed scenarios, additional threads might exist due to multi-threaded operators or threaded ports.

In the existence of multiple threads, it is possible for multiple breakpoints to be stopped at the same time. However, a breakpoint can be only stopped on one thread at a time. If a breakpoint is stopped and a tuple arrives at the same port on another thread, the second tuple waits until the breakpoint on the first thread is continued, at which point the breakpoint stops again for the tuple that arrived on the second thread.