07 Dec, 2007

1 commit

  • The classes in org.opends.messages need to be made public so that they can be referenced from other public APIs. This change adds the PublicAPI annotation to the classes defined in this package as follows:
    
       * the org.opends.messages package is VOLATILE
    
       * the org.opends.messages core classes (Message, MessageDescriptor,
         MessageBuilder, Category, and Severity) are all UNCOMMITTED
    
       * the class org.opends.messages.MessageDescriptorRegistry is PRIVATE
         (it's only used in unit tests)
    
       * generated message classes are PRIVATE
    
    In addition minor cleanup was made to the classes where appropriate to make them suitable for public APIs:
    
       * used "final" where possible
    
       * reduced visibility of classes, methods, and members where appropriate
    
       * fixed some potential bugs spotted during this clean-up: class
         members not being initialized (the "final" keyword is useful for
         spotting this!)
    
       * added missing javadoc
       
       * I've removed the third-party and user-defined message generation
         since we could see know way in which they could be easily used
         without impacting core OpenDS source
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3536 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew_swift
     

02 Dec, 2007

1 commit


27 Nov, 2007

1 commit


26 Nov, 2007

2 commits

  • The fix consists in including a little bit more on context to the error message.
    
    For command-line dsconfig list-local-db-indexes --backend-name tasks -n -p 1389 -w s
    
    The output was:
    
    "Task Backend" is not a recognized component type
    
    With the fix the output is:
    
    "Task Backend" component type cannot be used with subcommand
    {list-local-db-indexes} 
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3497 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • Fix for Issue #1961 (reviewed by Josu)
     * Remove instances of "Specifies the..."
     * Remove instances of "Indicates that..."
     * Reword instances of "Specifies to..." (which doesn't really make
       sense anyway)
     * Change instances of "This utility may be used..." to "This utility
       can be used..." as discussed in a previous issue
     * Change some erroneous instances of "may" to "might" or "can". This
       might sound like a pointless change but it has implications for
       localization - "may" is generally ambiguous. 
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3496 41b1ffd8-f28e-4786-ab96-9950f0a78031
    lfrost
     

22 Nov, 2007

1 commit

  • The upgrader is breaking replication (and not just dsreplication).
    
    The problem occurs because the upgrader is systematically overwriting the contents of the admin-backend.ldif file when it should not.  The fix consists on not updating this file unless it does not exist.
    
    The same fix has been applied to tool.properties since it was also systematically overwritten (and so the user lost the changes made to it).
    
    Appart some fixes related to message formatting are also included in the attached diff file.  The code used to display messages with HTML formatting in CLI mode, so specific messages have been added when the upgrade is run from the command line.
    
    Finally the code of the upgrader has been updated to use the MenuBuilder class.  This is done to have a consistent output with the rest of the command-lines. 
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3485 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     

19 Nov, 2007

2 commits


16 Nov, 2007

1 commit

  • of component definitions as advanced and customizable:
    
    * advanced components: these will not be displayed by
      default in dsconfig. Examples include the various
      system backends
    
    * customizable components: these components are tagged
      as intended for customization using the CLI XML
      profile. Customizable components are usually the top
      level components previously referred to as "generic"
      by dsconfig. This term confused users who would, for
      example, mistake a "generic" backend for a JE backend.
    
    This change is part of issue 1829.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3460 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew_swift
     

15 Nov, 2007

1 commit

  • New two subcommands have been added to dsreplication:
    
    Usage:
    
    $ dsreplication pre-external-initialization --help
    dsreplication pre-external-initialization {options}
    This subcommand must be called before initializing the contents of all the replicated servers using the tool import-ldif or the binary copy method for replication to work.  You must specify the list of Base DNs that will be initialized and you must provide the credentials of any of the servers that is being replicated.  After calling this subcommand, you must initialize the contents of all the servers in the topology and after the initialization is over you must call the subcommand {post-external-initialization}.
    Global Options:    See "dsreplication --help"
    
    SubCommand Options:
    -h, --hostname {host}
        Directory server hostname or IP address
    -p, --port {port}
        Directory server port number
    -Z, --useSSL
        Use SSL for secure communication with the server
    -q, --useStartTLS
        Use StartTLS to secure communication with the server
    -l, --only-local
        Use this option when only the contents of the specified directory server will be initialized with an external method (import-ldif command or binary copy)
    
    
    $ dsreplication post-external-initialization --help
    Usage:  dsreplication post-external-initialization {options}
    This subcommand must be called after initializing the contents of all the replicated servers using the tool import-ldif or the binary copy method for replication to work.  You must specify the list of Base DNs that have been initialized and you must provide the credentials of any of the servers that is being replicated.  See the usage of the subcommand {pre-external-initialization} for more information.
    
    Global Options:
        See "dsreplication --help"
    
    SubCommand Options:
    -h, --hostname {host}
        Directory server hostname or IP address
    -p, --port {port}
        Directory server port number
    -Z, --useSSL
        Use SSL for secure communication with the server
    -q, --useStartTLS
        Use StartTLS to secure communication with the server
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3455 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     

14 Nov, 2007

2 commits


13 Nov, 2007

2 commits


12 Nov, 2007

1 commit

  • …of menus and in the order that questions to connect to the servers.
    Update the upgrade to use the same menus as the other command-lines.
    Do some minor changes in the uninstall command-line in order to be more consistent with dsconfig in the order where the connection parameters are provided.
    Fix a bug in ApplicationTrustManager related to the accepted certificates when there is a mismatch between the certificate and the host name.
    Do some refactorization of the code and remove the CliApplicationHelper class so that we use ConsoleApplication everywhere.
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3435 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     

09 Nov, 2007

2 commits

  • 1. The db directory is now automatically created if it doesn't alreadly exist. When changing the db directory, a message is now displayed to let the user know the files will have to be manually moved and the backend restarted. (Issue 1979)
    
    2. The backend no longer uses the Database.count method in JE as it is too expensive for large databases. The count can also be inaccurate when concurrent operations are executing on the server. This was causing the getEntryCount method up to 20 seconds to return. The count is now obtained from the id2subtree index. If the count is not maintained or the index is corrupt, it will fall back to using Database.count. (Issue 2581 and Issue 2420) 
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3434 41b1ffd8-f28e-4786-ab96-9950f0a78031
    boli
     
  • …me in the dsreplication usage.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3428 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     

08 Nov, 2007

3 commits

  • The problem is that there is a timeout when reading the monitoring informations 
    on the server and the code did not handle this properly.
    
    I have made the method Utils.getMessage to handle properly the case when a Topol
    ogyCacheException has not a Throwable cause.  In addition to that the method ret
    urns a specific message when a timeout occurs.  Finally the timeout thresold has
     been risen from 10 to 30 seconds to be able to read the topology.
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3426 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • Fix the copy/paste errors in the description of the destination server arguments for the dsreplication initialize sub-command.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3424 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • …up and status command-lines in the formatting and in the format used to present certificates to the user.
    
    Fix some bugs in the way the ADS was updated when an instance is uninstalled.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3423 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     

05 Nov, 2007

4 commits

  • The setup will automatically initialize the schema of the local server with the schema of the remote server.
    
    A new argument has been added to dsreplication enable (useSecondServerAsSchemaSource) to allow the user to specify which server must be used to initialize the schema of the other.  The usage of this argument is:
    Use the second server to initialize the schema of the first server.  If this option nor option {noSchemaReplication} are specified the schema of the first server will be used to initialize the schema of the second server
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3411 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • 
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3409 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • …he new options now ask for the different questions using the MenuBuilder methods and the methods defined in the ConsoleApplication class.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3407 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • This code implements the importLDIF methods of the schema backend so
    that the replication total update is now usable on cn=schema
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3405 41b1ffd8-f28e-4786-ab96-9950f0a78031
    gbellato
     

02 Nov, 2007

1 commit


30 Oct, 2007

1 commit

  • Until now, the workflows were automatically configured-a wokflow
    was created for each base DN in the backends. When new suffixes
    were added or when a backend was added, the associated workflows
    were also created (and simillarly workflows were deleted as suffixes
    or backends were removed).
    
    With the manual mode, each and every workflow in the server must
    be defined explicitely in the configuration. By default, the server is
    running in automatic configuration mode. To have a server running
    with manual configuration mode one must set the attribute in
    cn=config:
    
        dn: cn=config
        ...
        ds-cfg-workflow-configuration-mode: auto|manual
    
    
    No attribute means "auto" mode.
    
    The workflow configuration consist of 3 parts:
    - the configuration of workfow elements
    - the configuration of workfows
    - the configuration of network groups
    
    
    The Workflow Elements - A workflow element is a basic task in a
    workflow. The workflow elements are organized in trees and the
    simplest tree is made of one element. For example, the workflow
    element that wraps a local backend is configured as follow:
    
        dn: ds-cfg-workflow-element-id=userRoot,cn=workflow elements,cn=config
        objectClass: top
        objectClass: ds-cfg-workflow-element
        objectClass: ds-cfg-local-backend-workflow-element
        ds-cfg-workflow-element-id: userRoot
        ds-cfg-enabled: true
        ds-cfg-java-class: org.opends.server.workflowelement.localbackend.LocalBackendWorkflowElement
        ds-cfg-backend: ds-cfg-backend-id=userRoot,cn=Backends,cn=config
    
    From an admin standpoint, the local backend workflow element
    is an aggregation of a single backend (attribute ds-cfg-backend).
    So we cannot disable/delete a backend as long as it is used by a
    local backend workflow element.
    
    
    The Workflows - A workflow is a chain of processing and it's
    targeting all the entries under a given baseDN. The processing
    is actually identified by the root node of the task tree described
    above. The configuration of a workflow looks like:
    
        dn: ds-cfg-workflow-id=userRoot,cn=workflows,cn=config
        objectClass: top
        objectClass: ds-cfg-workflow
        ds-cfg-workflow-id: userRoot
        ds-cfg-enabled: true
        ds-cfg-workflow-element: ds-cfg-workflow-element-id=userRoot,cn=workflow elements,cn=config
        ds-cfg-base-dn:  dc=example,dc=com
    
    From an admin standpoint, the local workflow is an aggregation
    of a single elements (attribute ds-cfg-workflow-element).
    So we cannot disable/delete a workflow element as long as it is used
    by a local workflow.
    
    
    The Network Groups - A network group defines categories for
    client connection. The network group contains a set of workflows
    and each client operation is routed to one (or more) workflow(s).
    By default, the server create a default network group which contains
    all the workflows defined in the server. The default network group
    looks like:
    
        dn: ds-cfg-id=defaultNetworkGroup2,cn=network groups,cn=config
        objectClass: top
        objectClass: ds-cfg-network-group
        ds-cfg-id: defaultNetworkGroup2
        ds-cfg-enabled: true
        ds-cfg-workflow: ds-cfg-workflow-id=adminRoot,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=ads-truststore,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=backup,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=config,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=monitor,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=schema,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=tasks,cn=Workflows,cn=config
        ds-cfg-workflow: ds-cfg-workflow-id=userRoot,cn=Workflows,cn=config
    
    From an admin standpoint, the network group is an aggregation
    of several workflows (attribute ds-cfg-workflow). So we cannot
    disable/delete a workflow as long as it is used by a network group.
    
    
    A unit test named WorkflowConfigurationTest tests the configuration
    of network groups, workflows and workflow elements.
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3388 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jdemendi
     

29 Oct, 2007

1 commit


26 Oct, 2007

1 commit


24 Oct, 2007

1 commit

  • - fix ConcurrentModificationException in the Initialize task by using methods that lock the entry
    - fix unroutable message, by forwarding message only to the replication servers that have
      replica connected
    Miscellaneous improvements in error or debug traces
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3364 41b1ffd8-f28e-4786-ab96-9950f0a78031
    pgamba
     

23 Oct, 2007

2 commits

  • The following changes are aimed to include a new attribute in the backend monitor entry to provide the number or entries per base DN. This information is used by the status, status-panel, dsreplication and graphical setup to be able to display the number of entries under a given base DN even when there are several base DNs defined in the same database.
    
    The way the new attribute appears in the monitoring entry is:
    
    ldapsearch -w s -p 1389 -b cn=monitor ds-backend-id=userRoot ds-base-dn-entry-countdn: cn=userRoot Backend,cn=monitor
    ds-base-dn-entry-count: 0 dc=ta
    ds-base-dn-entry-count: 1 dc=ti
    ds-base-dn-entry-count: 1 dc=to
    
    I prefer this approach because in my opinion having the number of entries is more important that the suffix.  Anyway I think the discussion around the structure of the value is not crucial as long as the value is easy to parse (which is the case).
    
    The new attribute is defined in the schema and the new OID assigned to it is 1.3.6.1.4.1.26027.1.1.434.
    
    In order to have a minimum impact on performances, the method backend.numSubordinates is only called when there are several base DNs defined in the database.
    
    
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3361 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@3356 41b1ffd8-f28e-4786-ab96-9950f0a78031
    lutoff
     

22 Oct, 2007

3 commits

  • and 2496: setup : should not asking for key Store PIN in loop
    
    Update the code to avoid the NullPointerException and limit the number of times we ask for the Key Store PIN to 7.  Once this limit is reached the setup is canceled.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3351 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • This changes the list formatting for property value lists so that each value is prefixed with a "*)" instead of a number and a bracket. This is done to avoid possible confusion with subsequent menu option numbers.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3348 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew_swift
     
  • This change modifies dsconfig so that it provides more helpful feedback to users when they need to provide string valued properties which must match a particular pattern. dsconfig now displays the pattern synopsis when requesting a property value or when reporting that a value is invalid.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3347 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew_swift
     

19 Oct, 2007

1 commit


18 Oct, 2007

1 commit


17 Oct, 2007

1 commit

  • CryptoManager
    RC4 -> RC4/NONE/NoPadding
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3324 41b1ffd8-f28e-4786-ab96-9950f0a78031
    david_page
     

16 Oct, 2007

3 commits

  • …if, export-ldif, backup, and restore) can now be interrupted for purposes of cancellation.  The manage-tasks utility now allows the user to cancel any one of these tasks if they are currently running.  If interrupted while executing, the tasks try to break out of their work loop as soon as possible and return a 'stopped by administrator' status.  Both the backup and export-ldif tasks perform some cleanup (removing the abandoned backup or exported LDIF file) if they are cancelled.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3316 41b1ffd8-f28e-4786-ab96-9950f0a78031
    kenneth_suter
     
  • 
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3311 41b1ffd8-f28e-4786-ab96-9950f0a78031
    jvergara
     
  • …eplica data , the replica must update the replication server with the missing changes.
    1 line fix , the entryUUID attribute must be part of the searched attributes in order to rebuild the operations - and created unit tests for this.
    
    
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@3309 41b1ffd8-f28e-4786-ab96-9950f0a78031
    pgamba