Thanks Subrat for the more detailed information.
Q1: For the WS DW - have you coded the WSError event of the DS or DC container to trap more information on the DW's -1 failure?
FWIW: I would also put a TRY..CATCH around the WS DW code and see if an exception is thrown. If so, the Exception object may contain more information as to the reason for the WS failure.