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