Topic
  • 11 replies
  • Latest Post - ‏2013-12-18T14:40:50Z by Kumaraswamy M
luclm
luclm
6 Posts

Pinned topic web service configuration ?

‏2013-12-05T18:55:53Z |

Hello,

I don't understand the behavior of the web serveur concerning  the RPE license availability... I am using RPE 1.2 (1.2.0 or 1.2.0.1)  

When I add a new job to execute, and if the number of licenses is reached on the distant machine, the new job is aborted and I have to recreate again the job. It seems that the "queue" concept is not used.

Am I wrong somewhere ? is there some configuration to do ? I have not seen in the documentation any "maxConcurrency" feature as in the 1.1 version. 

Regards

Luc

 

  • Kumaraswamy M
    Kumaraswamy M
    253 Posts
    ACCEPTED ANSWER

    Re: web service configuration ?

    ‏2013-12-17T13:11:00Z  
    • luclm
    • ‏2013-12-17T10:31:08Z

    Hi,

    Today I make again the test after having restart the server and deleted the old jobs. 

    Here the sequence of actions:

    - send a job, that will take some time to execute, it's running

    - send the same job again, it's in queue

    - after some time, I cancel the first job - status is cancelling , but never cancelled ...

    - I delete the job

    - the other job is still in queue, but not starting

    - the RPE_PUBLISH licence taken by the deleted job is not released (there is only one licence available on the server)

    I join screendumps and log files in the attached word file

    Regards,

    luc

    Hi Luc,

    Please try the following scenario

    - restart tomcat server

    - start document generation job A (which takes around a minute to complete)

    - start document generation job B

    - Let job A run to completion... job B should be in queue until then

    Let me know the results.

     

    Thanks

    Kumar

  • Dragos.Cojocari
    Dragos.Cojocari
    1621 Posts

    Re: web service configuration ?

    ‏2013-12-06T10:26:43Z  

    Hey Luc,

     

    the concurrency limit in RPE is meant to limit the number of concurrent docgens so that RPE's remote docgen does not deplete the CPU. This functionality only takes into account the limit defined by the admin and the number of running processes and not the number of available licenses.

    The RPE webservices work like this:

    • a request for a new docgen comes  from a client
    • if the number of current docgens is higher or equal to the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" the request is queued
    • if the number of current docgens is lowed than the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" a new docgen process is started. This process will try to check out  a license and if that fails the process is aborted

    But what you describe is a valid scenario for which we added the license retry functionality in RPE 1.2.1. See the "com.ibm.rational.rpe.license.attempts.count" and "com.ibm.rational.rpe.license.retry.timeout" in the "Available remote flags" twistie in http://pic.dhe.ibm.com/infocenter/rpehelp/v1r2m1/index.jsp?re=1&topic=/com.ibm.rational.pe.install.doc/topics/t_flags_remote_tomcat.html&scope=null

    So with these flags in place the process becomes

    • a request for a new docgen comes  from a client
    • if the number of current docgens is higher or equal to the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" the request is queued
    • if the number of current docgens is lowed than the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" a new docgen process is started. This process will try to check out  a license and if that fails the process will sleep for "com.ibm.rational.rpe.license.retry.timeout" ( to give a chance for other processes to end and return a license) and then retry the license checkout. This process is repeated until a license is acquired or the number of retries exceeds the value defined by "com.ibm.rational.rpe.license.attempts.count"

     

    Regards,

        Dragos

     

  • luclm
    luclm
    6 Posts

    Re: web service configuration ?

    ‏2013-12-06T15:29:40Z  

    Hey Luc,

     

    the concurrency limit in RPE is meant to limit the number of concurrent docgens so that RPE's remote docgen does not deplete the CPU. This functionality only takes into account the limit defined by the admin and the number of running processes and not the number of available licenses.

    The RPE webservices work like this:

    • a request for a new docgen comes  from a client
    • if the number of current docgens is higher or equal to the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" the request is queued
    • if the number of current docgens is lowed than the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" a new docgen process is started. This process will try to check out  a license and if that fails the process is aborted

    But what you describe is a valid scenario for which we added the license retry functionality in RPE 1.2.1. See the "com.ibm.rational.rpe.license.attempts.count" and "com.ibm.rational.rpe.license.retry.timeout" in the "Available remote flags" twistie in http://pic.dhe.ibm.com/infocenter/rpehelp/v1r2m1/index.jsp?re=1&topic=/com.ibm.rational.pe.install.doc/topics/t_flags_remote_tomcat.html&scope=null

    So with these flags in place the process becomes

    • a request for a new docgen comes  from a client
    • if the number of current docgens is higher or equal to the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" the request is queued
    • if the number of current docgens is lowed than the limit defined by "com.ibm.rational.rpe.docgen.concurentlimit" a new docgen process is started. This process will try to check out  a license and if that fails the process will sleep for "com.ibm.rational.rpe.license.retry.timeout" ( to give a chance for other processes to end and return a license) and then retry the license checkout. This process is repeated until a license is acquired or the number of retries exceeds the value defined by "com.ibm.rational.rpe.license.attempts.count"

     

    Regards,

        Dragos

     

    Hi Dragos,

    Thanks for the information. I add some parameter to my tomcat service, in the registry key  HLM/Sofwtare/Apache.../Procrun 2.0/Tomcat/Parameters/Java,  mainly -Dcom.ibm.rational.rpe.docgen.concurentlimit=1 and restart the server.

    But it seems not to work ... I have a job already executing, and when added a new one, it tried immediately to run and abort because of the missing licence (limited also to 1). I don't understand what's wrong, according your information (I am using 1.2.0.1 and not 1.2.1, so no retry feature ...)

    I join a file showing my configuration.

    Best regards,

    Luc

     

     

     

    Attachments

  • Dragos.Cojocari
    Dragos.Cojocari
    1621 Posts

    Re: web service configuration ?

    ‏2013-12-10T13:39:28Z  
    • luclm
    • ‏2013-12-06T15:29:40Z

    Hi Dragos,

    Thanks for the information. I add some parameter to my tomcat service, in the registry key  HLM/Sofwtare/Apache.../Procrun 2.0/Tomcat/Parameters/Java,  mainly -Dcom.ibm.rational.rpe.docgen.concurentlimit=1 and restart the server.

    But it seems not to work ... I have a job already executing, and when added a new one, it tried immediately to run and abort because of the missing licence (limited also to 1). I don't understand what's wrong, according your information (I am using 1.2.0.1 and not 1.2.1, so no retry feature ...)

    I join a file showing my configuration.

    Best regards,

    Luc

     

     

     

    Hey Luc,

     

    there is a typo in the documentation. The flag is "com.ibm.rational.rpe.docgen.concurrentlimit" ( double r) and not "com.ibm.rational.rpe.docgen.concurentlimit"

     

    Please use the double r version and you should  see the expected behavior.

     

    Regards,

        Dragos

  • luclm
    luclm
    6 Posts

    Re: web service configuration ?

    ‏2013-12-10T17:29:36Z  

    Hey Luc,

     

    there is a typo in the documentation. The flag is "com.ibm.rational.rpe.docgen.concurrentlimit" ( double r) and not "com.ibm.rational.rpe.docgen.concurentlimit"

     

    Please use the double r version and you should  see the expected behavior.

     

    Regards,

        Dragos

    Hi Dragos,

    Thanks for your point . Effectivelly the behavior is now better, and the  new jobs are added to the queue  ... but I have still an issue: even if previous jobs are terminated or deleted, the queued jobs never start ...

    I have checked that in fact the  RPE license is not released even afetr aborted and deleted the running job.

    Also, after reboot of the server, to be sure that the licence is release, the jobs continue to be in the queue and are not starting ... (I am continue to use 1.2.0.1) 

    some ideas ?

    Best regards,

    Luc

  • Dragos.Cojocari
    Dragos.Cojocari
    1621 Posts

    Re: web service configuration ?

    ‏2013-12-11T10:28:24Z  
    • luclm
    • ‏2013-12-10T17:29:36Z

    Hi Dragos,

    Thanks for your point . Effectivelly the behavior is now better, and the  new jobs are added to the queue  ... but I have still an issue: even if previous jobs are terminated or deleted, the queued jobs never start ...

    I have checked that in fact the  RPE license is not released even afetr aborted and deleted the running job.

    Also, after reboot of the server, to be sure that the licence is release, the jobs continue to be in the queue and are not starting ... (I am continue to use 1.2.0.1) 

    some ideas ?

    Best regards,

    Luc

    Hey Luc,

     

    can you upload the tomcat logs?

     

    Regards,

        Dragos

  • luclm
    luclm
    6 Posts

    Re: web service configuration ?

    ‏2013-12-13T15:09:59Z  

    Hey Luc,

     

    can you upload the tomcat logs?

     

    Regards,

        Dragos

    Hi Dragos,

    Here the tomcat logs. After a reboot of the VM, the job is still in queue and is not starting.

    Regards,

    Luc

     

    Attachments

  • Kumaraswamy M
    Kumaraswamy M
    253 Posts

    Re: web service configuration ?

    ‏2013-12-17T05:50:21Z  
    • luclm
    • ‏2013-12-13T15:09:59Z

    Hi Dragos,

    Here the tomcat logs. After a reboot of the VM, the job is still in queue and is not starting.

    Regards,

    Luc

     

    Hi Luc,

    The attached log doesn't help much. Please perform the following steps to log more details.

    1. Stop tomcat server

    2. Copy the attached files under %tomcat_home%\webapps\rpews\WEB-INF\classes

    3. Start tomcat server

    Once you replicate the issue again, please share %tomcat_home%\temp\RPE\rpews.log. Also attache tomcat*stdout*.log and tomcat*stderr*.log.

     

    Thanks,

    Kumar

  • luclm
    luclm
    6 Posts

    Re: web service configuration ?

    ‏2013-12-17T10:31:08Z  

    Hi Luc,

    The attached log doesn't help much. Please perform the following steps to log more details.

    1. Stop tomcat server

    2. Copy the attached files under %tomcat_home%\webapps\rpews\WEB-INF\classes

    3. Start tomcat server

    Once you replicate the issue again, please share %tomcat_home%\temp\RPE\rpews.log. Also attache tomcat*stdout*.log and tomcat*stderr*.log.

     

    Thanks,

    Kumar

    Hi,

    Today I make again the test after having restart the server and deleted the old jobs. 

    Here the sequence of actions:

    - send a job, that will take some time to execute, it's running

    - send the same job again, it's in queue

    - after some time, I cancel the first job - status is cancelling , but never cancelled ...

    - I delete the job

    - the other job is still in queue, but not starting

    - the RPE_PUBLISH licence taken by the deleted job is not released (there is only one licence available on the server)

    I join screendumps and log files in the attached word file

    Regards,

    luc

    Attachments

  • Kumaraswamy M
    Kumaraswamy M
    253 Posts

    Re: web service configuration ?

    ‏2013-12-17T13:11:00Z  
    • luclm
    • ‏2013-12-17T10:31:08Z

    Hi,

    Today I make again the test after having restart the server and deleted the old jobs. 

    Here the sequence of actions:

    - send a job, that will take some time to execute, it's running

    - send the same job again, it's in queue

    - after some time, I cancel the first job - status is cancelling , but never cancelled ...

    - I delete the job

    - the other job is still in queue, but not starting

    - the RPE_PUBLISH licence taken by the deleted job is not released (there is only one licence available on the server)

    I join screendumps and log files in the attached word file

    Regards,

    luc

    Hi Luc,

    Please try the following scenario

    - restart tomcat server

    - start document generation job A (which takes around a minute to complete)

    - start document generation job B

    - Let job A run to completion... job B should be in queue until then

    Let me know the results.

     

    Thanks

    Kumar

  • luclm
    luclm
    6 Posts

    Re: web service configuration ?

    ‏2013-12-18T14:00:32Z  

    Hi Luc,

    Please try the following scenario

    - restart tomcat server

    - start document generation job A (which takes around a minute to complete)

    - start document generation job B

    - Let job A run to completion... job B should be in queue until then

    Let me know the results.

     

    Thanks

    Kumar

    Hi,

    Finally I have now a satisfying behavior of my web service. It seems that you may have trouble on the job management when for exemple a job take a long time to execute, or when a job is "blocked" in case of error. In these conditions cancelling/deleteing  the job will not release the licence, and the service is blocked. This is probably the explanation of my previous issue. Also I have seen that is some conditions, a job in the queue may be aborted because of a missing licence, there is some critical section bafore the execution of the job, where the licence is expected to be OK but it finally not when running.

    regards,

    Luc

  • Kumaraswamy M
    Kumaraswamy M
    253 Posts

    Re: web service configuration ?

    ‏2013-12-18T14:40:50Z  
    • luclm
    • ‏2013-12-18T14:00:32Z

    Hi,

    Finally I have now a satisfying behavior of my web service. It seems that you may have trouble on the job management when for exemple a job take a long time to execute, or when a job is "blocked" in case of error. In these conditions cancelling/deleteing  the job will not release the licence, and the service is blocked. This is probably the explanation of my previous issue. Also I have seen that is some conditions, a job in the queue may be aborted because of a missing licence, there is some critical section bafore the execution of the job, where the licence is expected to be OK but it finally not when running.

    regards,

    Luc

    Hi Luc,

    Good to know that it worked in positive scenario.

    >>> It seems that you may have trouble on the job management when for exemple a job take a long time to execute, or when a job is "blocked" in case of error. In these conditions cancelling/deleteing  the job will not release the licence, and the service is blocked.

    When a job is killed it doesn't get killed immediately. For eg, if RPE document generation has reached a point where it is reading data from CLM / DOORS / etc, killing the job doesn't get killed immediately. The job gets killed once the data is retrieved and the control is back on RPE side. There are few other such cases as well. May be you hit one of those cases.

     

    Thanks,

    Kumar