Hiranya ...Thanks Lots ..

Thanks
Indika

On Sun, Sep 13, 2009 at 4:08 PM, Hiranya Jayathilaka
<[email protected]> wrote:
> Hi Indika,
>
> On Sun, Sep 13, 2009 at 11:56 AM, indika kumara <[email protected]>
> wrote:
>>
>> Thanks Hiranya for point out this error… Those are my faults
>>
>> TaskSchedulerFactory is the initially written code to get / create a
>> TaskScheduler
>>
>> SynapseConstants.SYNAPSE_STARTUP_TASK_SCHEDULER is also old constant
>> prior to move code into a new task module. After that it should uses
>> TaskConstants.TASK_SCHEDULER.
>>
>> Unforunaly …seems, I have forgotten to remove it...
>>
>> TaskScheduler taskScheduler = TaskSchedulerFactory.getTaskScheduler(
>>                    SynapseConstants.SYNAPSE_STARTUP_TASK_SCHEDULER);
>>
>> This is also the old code prior to add TaskHelper... seems I have
>> forgotten to remove this too...
>>
>> Really TaskHelper should rename to Task Component Manager or something
>>
>> And within method TaskHelper.init … I didn’t initialize actual
>> TaskScheduler to make it late until first task is run.
>>
>> Fix …
>>
>> Anything,   begin with SynapseConstants.* should be removed only uses
>> constant in Task module
>>
>> Rename TaskHelper to Task Component Manager to something
>>
>> Then uses that class to init task component and get resources inside
>> task component. (i.e. task scheduler and task  description repository)
>> … simply consider TaskSchedulerFactory as a internal class  and
>> TaskHelper as the public class
>>
>> Hiranya … I haven’t any time these day to fix and test ..and it is
>> great if you can do this …and in a proper way.
>
> Thanks for the detailed explanation. I will make sure that these issues get
> fixed before the 1.3 release.
> Thanks,
> Hiranya
>
>>
>> Thanks
>> Indika
>>
>> On Fri, Sep 11, 2009 at 5:08 PM, Hiranya Jayathilaka
>> <[email protected]> wrote:
>> > FYI this is how we initialize the TaskHelper.
>> >
>> > taskHelper.init(
>> >
>> > TaskDescriptionRepositoryFactory.getTaskDescriptionRepository(
>> >
>> > TaskConstants.TASK_DESCRIPTION_REPOSITORY),
>> >
>> > TaskSchedulerFactory.getTaskScheduler(TaskConstants.TASK_SCHEDULER));
>> >
>> > Note that we use one task scheduler to initialize the helper and use a
>> > different one when initializing SimpleQuartz instances.
>> >
>> > Thanks,
>> > Hiranya
>> >
>> > On Fri, Sep 11, 2009 at 4:29 PM, Hiranya Jayathilaka
>> > <[email protected]>
>> > wrote:
>> >>
>> >> Hi Devs,
>> >>
>> >> I ran into some buggy looking code related to tasks. When a new task is
>> >> created the SimpleQuartz#init method is called. There we get a task
>> >> scheduler instance using the following piece of code.
>> >>
>> >> TaskScheduler taskScheduler = TaskSchedulerFactory.getTaskScheduler(
>> >>
>> >> SynapseConstants.SYNAPSE_STARTUP_TASK_SCHEDULER);
>> >>
>> >> Then when a task is stopped/removed SimpleQuartz#destroy method is
>> >> called.
>> >> There we try to get the task scheduler using the following line of
>> >> code.
>> >>
>> >> TaskScheduler taskScheduler = taskHelper.getTaskScheduler();
>> >>
>> >> The task schedulers returned at the two occasions are in fact different
>> >> (confirmed by debugging). Therefore when a task is removed from the
>> >> system
>> >> at runtime, things are not cleaned up properly and the task will
>> >> continue to
>> >> run in the background. Also the task scheduler instance set to the task
>> >> helper is never initialized. That is another problem I encountered.
>> >>
>> >> I feel that these are actually bugs. Can somebody who's more familiar
>> >> with
>> >> the Synapse tasks module shed some light on the subject? If somebody
>> >> can
>> >> confirm I can start working on fixing them.
>> >>
>> >> Thanks
>> >> --
>> >> Hiranya Jayathilaka
>> >> Software Engineer;
>> >> WSO2 Inc.;  http://wso2.org
>> >> E-mail: [email protected];  Mobile: +94 77 633 3491
>> >> Blog: http://techfeast-hiranya.blogspot.com
>> >
>> >
>> >
>> > --
>> > Hiranya Jayathilaka
>> > Software Engineer;
>> > WSO2 Inc.;  http://wso2.org
>> > E-mail: [email protected];  Mobile: +94 77 633 3491
>> > Blog: http://techfeast-hiranya.blogspot.com
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
>
>
> --
> Hiranya Jayathilaka
> Software Engineer;
> WSO2 Inc.;  http://wso2.org
> E-mail: [email protected];  Mobile: +94 77 633 3491
> Blog: http://techfeast-hiranya.blogspot.com
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to