All this handling of the target table in the init function is just noise. There's really not even any reason for the target table to be a member (as the tcd should be instead). This also goes for the m_targetTuple which gets reset in p_execute anyway.
Both the target table pointer and the target tuple should just be defined as local variables in p_execute.