Oracle Waveset 8.1.1 System Administrator's Guide

Limiting Concurrent Connections

Every public repository method acquires a connection when the method begins and then releases that connection when the method exits. This connection is almost always a JDBC connection because the repository almost always accesses a DBMS. The method releases the connection whether it completes successfully or unsuccessfully.

You can configure the number of concurrent connections by modifying the maxConcurrentConnections value in the RepositoryConfiguration object.

If the repository reaches the configured limit, calls to the repository will wait until the number of connections being used by the repository falls back below the limit. The repository might appear to slow down, or even stop, if this is necessary to stay within the specified number of connections.


Note –

Any limit on the number of concurrent connections applies whether the repository pools connections or not. In other words, maxConcurrentConnections is unaffected by connectionPoolDisable.


    To configure the maxConcurrentConnections value, you must edit the RepositoryConfiguration object from the System Settings debug page (http://host:port/idm/debug/session.jsp),

  1. Select Configuration from the menu located next to the List Objects button.

  2. Click the List Objects button to view all of the Configuration-type objects.

  3. Locate RepositoryConfiguation and click Edit.

  4. When the Checkout Object: Configuration, #ID#REPOSITORYCONFIGURATION page displays (similar to the following example), locate maxConcurrentConnections and modify the existing value as needed.


    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
    <!-- MemberObjectGroups="#ID#Top" extensionClass="RepositoryConfiguration"
    id="#ID#RepositoryConfiguration" name="RepositoryConfiguration"-->
    <Configuration id='#ID#RepositoryConfiguration' name='RepositoryConfiguration'
    lock='Configurator#1251229174812' creator='getRepositoryConfiguration(boolean)'
    createDate='1249052436640' repoMod='1249048790203' type=
      'RepositoryConfiguration'>  <Extension>
        <RepositoryConfiguration instanceOf=
         'com.waveset.repository.RepositoryConfiguration'
    lockTimeoutMillis='300000' maxConcurrentConnections='0' blockRowsGet='1000'
    blockRowsList='10000' maxAttrValLength='255' maxLogAcctAttrChangesLength='4000'
    maxLogMessageLength='255' maxLogXmlLength='2147483647' 
    maxLogAcctAttrValueLength='128'maxLogParmValueLength='128' 
    maxXmlLength='2147483647' maxSummaryLength='2048' optimizeReplaceAttributes=
    'true' maxInList='1000' maxDelSet='1000' mcDBCall='10' mcDeleteAttrVal='3' 
    mcInsertAttrVal='15' mcUpdateAttrVal='20' connectionPoolDisable='false'
    changeScanInterval='5000' changePropagationDelay='3000' changeAgeOut='60000'>
          <RelocatedTypes>
            <TypeDataStore typeName='User' deleteDestroyInterval='1' 
    attr1='MemberObjectGroups' attr2='lastname' attr3='firstname'>
            </TypeDataStore>
          </RelocatedTypes>
        </RepositoryConfiguration>
      </Extension>
    <MemberObjectGroups>
      <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
    </MemberObjectGroups>
    </Configuration>L
  5. Save your changes.


Note –

For more information about which object types are stored in each set of tables, see Data Classes.