Annotation Type RoundRobinPartitioning


  • @Target({TYPE,METHOD,FIELD})
    @Retention(RUNTIME)
    public @interface RoundRobinPartitioning
    RoundRobinPartitioning sends requests in a round robin fashion to the set of connection pools. It is for load-balancing read queries across a cluster of database machines. It requires that the full database be replicated on each machine, so does not support partitioning. The data should either be read-only, or writes should be replicated on the database.

    Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit. Partition policies are globally named to allow reuse, the partitioning policy must also be set using the @Partitioned annotation to be used.

    See Also:
    Partitioned, RoundRobinPartitioningPolicy
    Author:
    James Sutherland
    Since:
    EclipseLink 2.2
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String name
      The name of the partition policy, names must be unique for the persistence unit.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      java.lang.String[] connectionPools
      List of connection pool names to load balance across.
      boolean replicateWrites
      This allows for a set of database to be written to and kept in synch, and have reads load-balanced across the databases.
    • Element Detail

      • name

        java.lang.String name
        The name of the partition policy, names must be unique for the persistence unit.
      • connectionPools

        java.lang.String[] connectionPools
        List of connection pool names to load balance across. Defaults to all defined pools in the ServerSession.
        Default:
        {}
      • replicateWrites

        boolean replicateWrites
        This allows for a set of database to be written to and kept in synch, and have reads load-balanced across the databases.
        Default:
        false