Tapestry
  1. Tapestry
  2. TAPESTRY-2117

Circular @SubModule will crash the IOC container with OutOfMemoryException

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.9
    • Fix Version/s: 5.0.11
    • Component/s: tapestry-ioc
    • Labels:
      None

      Description

      I have two modules. If both modules refer to each other with a @SubModule adding the first module seems to hang up the IOC container.

      Example:

      @SubModule(

      {MySecondModule.class}

      )
      public class MyFirstModule {
      }

      @SubModule(

      {MyFirstModule.class}

      )
      public class MySecondModule {
      }

      1. TapestryIOCTest.tar.gz
        1.10 MB
        Martijn Brinkers

        Activity

        Hide
        Howard M. Lewis Ship added a comment -

        How odd, as I know I accounted for this and I'm pretty sure there's an explicit test.

        Show
        Howard M. Lewis Ship added a comment - How odd, as I know I accounted for this and I'm pretty sure there's an explicit test.
        Hide
        Martijn Brinkers added a comment -

        I can reproduce it with a small test program. I have attached the eclipse project. The main creates a registry and adds one module, MyTestModule. MyTestModule has a @SubModule(

        {MySecondModule.class}

        ) annotation and MySecondModule has a @SubModule(

        {MyTestModule.class}

        )
        annotation. When the first module is added to the registry and hangs.

        Show
        Martijn Brinkers added a comment - I can reproduce it with a small test program. I have attached the eclipse project. The main creates a registry and adds one module, MyTestModule. MyTestModule has a @SubModule( {MySecondModule.class} ) annotation and MySecondModule has a @SubModule( {MyTestModule.class} ) annotation. When the first module is added to the registry and hangs.

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Martijn Brinkers
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development