Hi,

On Thu, Apr 26, 2012 at 12:50 AM, Amila Maha Arachchi <[email protected]>wrote:

> Hi Azeez,
>
> Throttling rule execution is not a tenant specific task. You don't need a
> loaded tenant to run it. This task keeps running when the server is up.
>
> My understanding on this issue is as follows.
>
> ThrottlingJob class implements Job interface from quartz. At the moment
> there are two quartz versions available. 1.6 and 2.1. quartz 2.1 get bound
> to throttling manager it seems. There are some drastic changes in the
> quartz 2.1 implementation. We have to change the code to get it to work
> with quartz 2.1. We encountered similar kind of issue (don't remember
> whether it was the exact issue) in billing components. Until it is fixed we
> applied a workaround to get the quartz 1.6 binded to billing bundle
> (importing quartz 1.6 with a specific version 9.9.9 in the pom).
>
> These should be fixed for this release and we have to get rid of quartz
> 1.6 (no need to keep two jars) and go with 2.1
>

There are some major API changes between quartz-1.6 and 2.1 version. So we
need to update the Synapse task code to compatible with quartz-2.1. AFAIK
billing component is also using Synapse task. I have given a Synapse patch
to upgrade quartz version to 2.1. Here is the JIRA [1]. Once this patch is
applied to Synapse trunk, we can get rid of having two quartz versions and
move to 2.1 version.

[1]. https://issues.apache.org/jira/browse/SYNAPSE-837

Regards,
Dinusha.

>
> I created two jiras to track this. STRATOS-2031 and STRATOS-2032.
>
> Regards,
> AmilaM.
>
> On Wed, Apr 25, 2012 at 8:55 PM, Afkham Azeez <[email protected]> wrote:
>
>> Looks like this task in not shutdown/cancelled when the tenant is
>> unloaded. You have to implement an OSGi service and handle the throttling
>> component.
>>
>> On Wed, Apr 25, 2012 at 7:41 PM, Supun Malinga <[email protected]> wrote:
>>
>>> stack trace,
>>> Looks like occurs after the tenant cleanup.
>>>
>>> [2012-04-25 18:00:06,105]  INFO
>>> {org.wso2.carbon.core.multitenancy.utils.TenantAxisUtils} -  Cleaned up
>>> tenant supun.org
>>> [2012-04-25 18:18:18,202] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>>  at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>>  at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 18:18:18,205] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>>  at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>>  at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>>  ... 1 more
>>> [2012-04-25 18:28:08,523]  INFO
>>> {org.wso2.carbon.bam.core.summary.SummaryGenerationTask} -  Running Summary
>>> Generator...
>>> [2012-04-25 18:28:08,533]  INFO
>>> {org.wso2.carbon.bam.core.summary.SummaryGenerationTask} -  Summary
>>> generation successful ...
>>> [2012-04-25 18:28:18,189] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>>  at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>>  at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 18:28:18,190] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>>  at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>>  at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>>  ... 1 more
>>> [2012-04-25 18:38:18,189] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 18:38:18,191] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>> [2012-04-25 18:48:18,197] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 18:48:18,198] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>> [2012-04-25 18:58:18,196] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 18:58:18,197] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>> [2012-04-25 19:08:18,197] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 19:08:18,198] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>> [2012-04-25 19:18:18,194] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 19:18:18,194] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>> [2012-04-25 19:28:08,523]  INFO
>>> {org.wso2.carbon.bam.core.summary.SummaryGenerationTask} -  Running Summary
>>> Generator...
>>> [2012-04-25 19:28:08,538]  INFO
>>> {org.wso2.carbon.bam.core.summary.SummaryGenerationTask} -  Summary
>>> generation successful ...
>>> [2012-04-25 19:28:18,192] ERROR {org.quartz.core.JobRunShell} -  Job
>>> 08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an unhandled Exception:
>>> java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> [2012-04-25 19:28:18,193] ERROR {org.quartz.core.ErrorLogger} -  Job
>>> (08645889-cd00-4ecf-bbdf-d9e25808b4d2.b9abae3b-38da-495f-9f72-a51ea851c6c4
>>> threw an exception.
>>> org.quartz.SchedulerException: Job threw an unhandled exception. [See
>>> nested exception: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected]
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
>>> at
>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
>>> Caused by: java.lang.IncompatibleClassChangeError: Found class
>>> org.quartz.JobExecutionContext, but interface was expected
>>> at
>>> org.wso2.carbon.throttling.manager.scheduling.ThrottlingJob.execute(ThrottlingJob.java:43)
>>>  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>> ... 1 more
>>>
>>> thanks,
>>> --
>>> Supun Malinga,
>>>
>>> Software Engineer,
>>> WSO2 Inc.
>>> http://wso2.com
>>> http://wso2.org
>>> email - [email protected] <[email protected]>
>>> mobile - 071 56 91 321
>>>
>>>
>>> _______________________________________________
>>> Dev mailing list
>>> [email protected]
>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>
>>>
>>
>>
>> --
>> *Afkham Azeez*
>> Director of Architecture; WSO2, Inc.; http://wso2.com
>> Member; Apache Software Foundation; http://www.apache.org/
>> * <http://www.apache.org/>**
>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>> *
>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>> *
>> *
>> *Lean . Enterprise . Middleware*
>>
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> *Amila Maharachchi*
> Senior Software Engineer; WSO2, Inc.; http://wso2.com
>
> Blog: http://maharachchi.blogspot.com
> Mobile: +94719371446
>
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to