Uploaded image for project: 'Spring Data GemFire'
  1. Spring Data GemFire
  2. SGF-252

Spring GemFire's Repository extension does not properly handle multiple, identically named Subregions for persisting corresponding application domain objects associated by way of the @Region annotation.

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0.0
    • 1.4 M1 (Dijkstra)
    • Spring + GemFire and the Spring Data Commons Repository abstraction extension (application Repositories).

    Description

      When an application defines 2 or more different application domain objects, for instance...

      @Region("Users")
      public class AdminUser extends User {
        ...
      }
      
      @Region("Users")
      public class GuestUser extends User {
        ...
      }
      

      Where each domain object is stored in multiple different, but identically named Subregions in GemFire, where the SDG XML namespace-based configuration meta-data might look like the following...

      <gfe:replicated-region id="Local" persistent="false">
        <gfe:replicated-region name="Admin" persistent="false">
          <gfe:replicated-region name="Users" persistent="false"/>
        </gfe:replicated-region>
        <gfe:replicated-region name="Guest" persistent="false">
          <gfe:replicated-region name="Users" persistent="false"/>
        </gfe:replicated-region>
      </gfe:replicated-region>
      

      Then Spring Data GemFire's Repository extension support infrastructure fails to properly associate the corresponding application domain object to the appropriate Subregion, i.e. ...

      AdminUser to /Local/Admin/Users

      and...

      GuestUser to /Local/Guest/Users

      Attachments

        Activity

          People

            jblum John Blum
            jblum John Blum
            Trevor Marshall Trevor Marshall
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 0.5d
                0.5d
                Remaining:
                Remaining Estimate - 0.25d
                0.25d
                Logged:
                Time Spent - Not Specified Time Not Required
                Not Specified