Ticket #1705 (closed defect: fixed)

Opened 2 years ago

Last modified 2 years ago

Users get bad subscriptions in case of republishing

Reported by: gracinet Assigned to: janguenot
Priority: P2 Milestone: CPS 3.4.4
Component: CPSWorkflow Version: TRUNK
Severity: normal Keywords:
Cc:

Description

They get a link to the pending proxy that has been merged and doesn't exist anymore.

This extract from CPSWorkflow.workflow, lines 1089 and following, seem to be the culprit:

        if delete_ob is not None:
            # XXX refactoring.                                                                                                 
            evtool.notify('workflow_%s' % tdef.getId(),
                          delete_ob, {'kwargs': kwargs})
            container = aq_parent(aq_inner(delete_ob))
            container._delObject(delete_ob.getId())
            if moved_exc is not None:
                raise moved_exc
            else:
                raise ObjectDeleted

delete_ob is the object (proxy) that has been merged, and the one on which the transition is been executed.

From CPSSubscriptions point of view, the event should be sent for dest_ob (merge target) even though it's not going through any transition. I'm not 100% sure though, since other parts from CPS might actually expect this behaviour.

Change History

02/11/07 01:51:51 changed by gracinet

  • status changed from new to closed.
  • resolution set to fixed.

Can't really imagine how an high level event on a transient object could ever be useful. Fix in [51073], test in [51074], using event listener from [51072]