Great work Sajith.

-----
Lakmal Warusawithana
Software Architect
M : +94714289692
On Feb 6, 2013 1:28 AM, "Sajith Kariyawasam" <saj...@wso2.com> wrote:

> Hi all,
>
> $subject is fixed now. Queuing git repo creation solved the issue.
>
> The issue seemed to be that git repo creation scripts failed to execute
> concurrently, therefore I separated out script execution part from the main
> thread, and let it to be executed sequentially..
>
> Fix did was to use a concurrent Queue, and adds a git repo creation job to
> the queue and returns the subscribe operation immediately.
> There s a RepoCreator thread running periodically, checks the queue, poll
> a job and executes. (Same kind of logic is used in AF, so it was easy to
> get this done)
> Subscribe operation returns the git repo URL as the response, but even
> without creating the git repo, since we know the git repo URL going to be,
> in advance (based on our logic) this is possible.
>
> Also, AF doesn't use the repo URL that is returned in subscribe request,
> they too generate the repoURL in their side.
>
> Now, there will be a slight time gap between subscribe operation
> getting successful and an actual git repo is created, and this is OK with
> AF team..also, in generally, this situation is to be handled
> by the service consumer of the subscribe operation, IMO ..
>
> I did a basic concurrent test with Janaka, to verify this has fixed the
> issue, and they are happy with that.. will c whats gonna happen when put
> this into QA :)
>
> As an improvement, we might need to look into how gitolite admin can be
> configured in order to serve concurrent requests, also we need to replace
> script based implementation with Java based Git client
> implementation (As we discussed previously)
>
> --
> Regards,
> *
> *
> *Sajith Kariyawasam*
> *Senior Software Engineer; WSO2, Inc.; http://wso2.com*
>
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to