What do you mean "NO_MORE_DATA" is not working. Are you sure it's being raised?
You can set an eternal loop
data x.
while x is initial.
endwhile.
in your extractor. Then launch from BW, and you'll be able to get into debug from SM50 (on your extractor system).
Or you can issue messages that you can see in the log.
Have you checked the details of the dump? Perhaps it tells you what table is getting very big?