Skip to content

Failed to remove handler attached on filtered event #2684

@vfdev-5

Description

@vfdev-5

🐛 Bug description

from ignite.engine import Engine, Events

e = Engine(lambda e, b: None)
assert len(e._event_handlers[Events.ITERATION_COMPLETED]) == 0

handle = e.add_event_handler(Events.ITERATION_COMPLETED(every=3), lambda _: print("Hello"))
assert len(e._event_handlers[Events.ITERATION_COMPLETED]) == 1

handle.remove()
assert len(e._event_handlers[Events.ITERATION_COMPLETED]) == 0, e._event_handlers[Events.ITERATION_COMPLETED]

Output:

---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
Input In [8], in <cell line: 11>()
      8 assert len(e._event_handlers[Events.ITERATION_COMPLETED]) == 1
     10 handle.remove()
---> 11 assert len(e._event_handlers[Events.ITERATION_COMPLETED]) == 0, e._event_handlers[Events.ITERATION_COMPLETED]

AssertionError: [(<function <lambda> at 0x132ab23a0>, (<ignite.engine.engine.Engine object at 0x13330ed00>,), {})]
> 

Environment

  • PyTorch Version (e.g., 1.4):
  • Ignite Version (e.g., 0.3.0): 0.4.9
  • OS (e.g., Linux):
  • How you installed Ignite (conda, pip, source):
  • Python version:
  • Any other relevant information:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions