Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#105 Possibility to specify config properties without numbers

open
5
2009-07-28
2008-03-31
Mikael Ståldal
No

It should be possible to specify configuration properties with multiple values (wrapper.java.classpath, wrapper.java.library.path, wrapper.java.additional, wrapper.java.parameter) without requirement for consecutive numbering.

The requirement for strict consecutive numbering is very inconvenient.

A good step in the right direction would be to accept non-consecutive numbering, e.g.

wrapper.java.additional.1=-Dfoo=aaa
wrapper.java.additional.2=-Dbar=bbb
# wrapper.java.additional.3=-Dbaz=ccc
wrapper.java.additional.4=-Dhuh=ddd

But even better would be to get rid of the numbers alltogether:

wrapper.java.additional=-Dfoo=aaa
wrapper.java.additional=-Dbar=bbb
# wrapper.java.additional=-Dbaz=ccc
wrapper.java.additional=-Dhuh=ddd

Overriding a multi-valued configuration property on command line without specifying a number should simply append to the list.

Discussion

  • Even more worrying when non-consecutive numbering is used like in example #1 (and which makes this a bug), is that the Java Virtual Machine will start with non-default startup parameters.

    We noticed that when non-consecutive numbering is used, the Java Eden Space is assigned 200MB instead of the normal 20MB. I'll make a simple program that will show this behaviour.

     
  • Sander Koning
    Sander Koning
    2009-07-28

    If you use non-consecutive numbering, which can happen if you temporarily remove a parameter, the parameters after the gap are not read. We've had one case of a crash when one garbage collection parameter was not read, but more often we just don't get the performance we want. For example, a too small permgen space.

    It's quite inconvenient if you have to support customers that use the wrapper to start your program, especially since there is nothing mentioned if some parameters aren't read. No log lines, no console warnings.

     
  • Leif Mortenson
    Leif Mortenson
    2009-07-28

    We are very close to getting this implemented and the plan is to include it in the next release. I will post back once development is complete.

     
  • Leif Mortenson
    Leif Mortenson
    2009-07-28

    • assigned_to: nobody --> mortenson
     
  • Leif Mortenson
    Leif Mortenson
    2009-08-02

    This has been fully implemented for the 3.3.6 release due out this month. From the release notes:

    Add a new wrapper.ignore_sequence_gaps property which makes it possible to have non sequential numbered property values. This affects the wrapper.app.parameter.<n>, wrapper.event.<event_name>.command.argv.<n>, wrapper.filter.trigger.<n>, wrapper.java.additional.<n>, wrapper.java.classpath.<n>, wrapper.java.library.path.<n>, wrapper.ntservice.dependency.<n>, and wrapper.timer.<n>.interval, properties. The default value maintains past functionality.

    Cheers,
    Leif