OpenJPA
  1. OpenJPA
  2. OPENJPA-1334

Support instance level distribution policy for named cache partitions

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.0
    • Fix Version/s: 2.0.0-beta
    • Component/s: datacache
    • Labels:
      None

      Description

      OpenJPA models L2 cache as one or more named partitions. And is able to assign a managed instance to a named partition. However, this distribution of managed instances to specific named partition is based on the instance's type and not an the instance itself. The type based as distribution allows the named cache partition be specified at metadata level.

      This proposed feature is to introduce a distribution policy that extends the support for instance based distribution policy.

        Activity

        Pinaki Poddar created issue -
        Hide
        Donald Woods added a comment -

        Comment from Pinaki in an email about r828880 -

        1. introduces a JPAProperties class. It is in preliminary stage but its purpose is to corral all JPA property key/value manipulation. If you are playing with JPA properties and needs more support, please consider adding them to this class rather than spreading them.

        2. Or know of some related processing happening elsewhere please consider relocation. For example, I found the following logic tucked in FetchPlanHintHandler...which may now live in JPAProperties.
        // to accomodate alias name input in relationship with enum values
        // e.g. "optimistic-force-increment" ==
        // LockModeType.OPTIMISTIC_FORCE_INCREMENT
        String strValue = ((String) value).toUpperCase().replace('-', '_');

        3. Changed use of implementation to interfaces in HintHandler. Please note that implementations are preferred not only for architectural aesthetics or programming discipline, but also helps any other downstream plug-ins.

        4. Used FetchPlan to carry these cache mode properties from facade to kernel. This decision aligns better with other configuration properties such as lock modes etc, and also tagging them on FetchPlan helps to reuse tested pathways. This change deprecated supporting methods/constructs appearing in StoreContext.

        Show
        Donald Woods added a comment - Comment from Pinaki in an email about r828880 - 1. introduces a JPAProperties class. It is in preliminary stage but its purpose is to corral all JPA property key/value manipulation. If you are playing with JPA properties and needs more support, please consider adding them to this class rather than spreading them. 2. Or know of some related processing happening elsewhere please consider relocation. For example, I found the following logic tucked in FetchPlanHintHandler...which may now live in JPAProperties. // to accomodate alias name input in relationship with enum values // e.g. "optimistic-force-increment" == // LockModeType.OPTIMISTIC_FORCE_INCREMENT String strValue = ((String) value).toUpperCase().replace('-', '_'); 3. Changed use of implementation to interfaces in HintHandler. Please note that implementations are preferred not only for architectural aesthetics or programming discipline, but also helps any other downstream plug-ins. 4. Used FetchPlan to carry these cache mode properties from facade to kernel. This decision aligns better with other configuration properties such as lock modes etc, and also tagging them on FetchPlan helps to reuse tested pathways. This change deprecated supporting methods/constructs appearing in StoreContext.
        Donald Woods made changes -
        Field Original Value New Value
        Fix Version/s 2.0.0-M4 [ 12314149 ]
        Fix Version/s 2.0.0 [ 12314019 ]
        Pinaki Poddar made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Donald Woods made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Pinaki Poddar
            Reporter:
            Pinaki Poddar
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 504h
              504h
              Remaining:
              Remaining Estimate - 504h
              504h
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development