You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@vcl.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2014/10/20 17:26:35 UTC

[jira] [Commented] (VCL-795) Request processes are continuously created after end time is reached if request state is 'inuse' and process initialization fails

    [ https://issues.apache.org/jira/browse/VCL-795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14176978#comment-14176978 ] 

ASF subversion and git services commented on VCL-795:
-----------------------------------------------------

Commit 1633172 from [~arkurth] in branch 'vcl/trunk'
[ https://svn.apache.org/r1633172 ]

VCL-795
Added condition to State.pm::reservation_failed to check if an 'inuse' process failed and the end time has been reached. If this is the case, the request state is set to complete and the computer state is set to failed. It had been setting the states back to 'inuse' causing the request to remain in the database indefinitely, constantly being processed.

Added code to check if reservation_failed was called from initialize. Added detail to the notify message to indicate if this is the case.

> Request processes are continuously created after end time is reached if request state is 'inuse' and process initialization fails
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: VCL-795
>                 URL: https://issues.apache.org/jira/browse/VCL-795
>             Project: VCL
>          Issue Type: Bug
>          Components: vcld (backend)
>    Affects Versions: 2.3.2
>            Reporter: Andy Kurth
>            Assignee: Andy Kurth
>             Fix For: 2.4
>
>
> vcld will continuously and perpetually attempt to process a request under these conditions:
> * Request state: inuse
> * Request end time has been reached (request.end is in the past)
> * Processes spawned fail to initialize
> An example where this can occur is for a reservation assigned to a VM and the VM host provisioning object fails to initialize.  state.pm::initialize calls reservation_failed.  There is a condition in reservation_failed to check for the _inuse_ state.  If _inuse_, the request and computer states are always set back to _inuse_ even after the request end time has been reached.  As a result, the request stays in the database forever.
> There is also no delay in between attempts because vcld sees the end time has been reached and immediately makes another attempt.  This causes vcld.log to grow rapidly.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)