I tried 60 seconds for timeout but that didn't work. I guess Ill
double it now and keep trying.

I have about 260,000 pending jobs, and nothing is getting done.

I know what you mean about purgeOldjobs. That service is crashed now
and I deleted old jobs from the database by hand. I was up to 2.6
million rows. Ofbiz was pretty much unusable.

If you have any other suggestions I'd love Yo hear them.

On Wednesday, July 13, 2011, Scott Gray <scott.g...@hotwaxmedia.com> wrote:
> Ah okay, that is entirely dependent on the number of jobs and the speed the 
> server can process them.  As a side note I would keep a close eye on the 
> purgeOldJobs service, when it starts falling over (transaction timeout again) 
> then the number of rows in the table will increase quickly which in turn will 
> slow down polling.
>
> In general the whole persisted jobs implementation is a bit fragile, 
> especially when dealing with a large number of jobs.  I've wanted to replace 
> it with something like quartz for a while but haven't had the time.
>
> Regards
> Scott
>
> On 14/07/2011, at 2:10 PM, Josh Jacobson wrote:
>
>> Thanks again. I actually meant a suggestion for the transaction
>> timeout. In any case I am grateful for your explanation.
>>
>>
>> On Wednesday, July 13, 2011, Scott Gray <scott.g...@hotwaxmedia.com> wrote:
>>> As best I can tell there shouldn't be any need to increase the interval 
>>> between polls since the interval timer doesn't actually start until the 
>>> previous poll has completed (see JobPoller.run()) so I can't see how a 
>>> small interval would cause any backlog problems.
>>>
>>> I'm guessing if there is any lock contention then it's probably caused by 
>>> the executing jobs trying to update their respective rows while the poller 
>>> is holding a table lock.  So from that point of view I guess increasing the 
>>> interval could reduce the amount of contention between the executing jobs 
>>> and the next poll.
>>>
>>> Regards
>>> Scott
>>>
>>> On 14/07/2011, at 1:02 PM, Josh Jacobson wrote:
>>>
>>>> Scott,
>>>>
>>>> Thanks! That is very precise advise. Do you have a suggestion on
>>>> interval time? 60 seconds? 120?
>>>>
>>>> Thanks,
>>>>
>>>> On Wed, Jul 13, 2011 at 5:34 PM, Scott Gray <scott.g...@hotwaxmedia.com> 
>>>> wrote:
>>>>> That configuration is for the frequency of job polls.  There isn't any 
>>>>> ability to specify the transaction timeout via configuration so you'll 
>>>>> need to modify the code directly:
>>>>> JobManager.java (line 148):
>>>>> beganTransaction = TransactionUtil.begin();
>>>>> needs to be changed to use TransactionUtil.begin(int)
>>>>>
>>>>> Regards
>>>>> Scott
>>>>>
>>>>> HotWax Media
>>>>> http://www.hotwaxmedia.com
>>>>>
>>>>> On 14/07/2011, at 12:23 PM, Josh Jacobson wrote:
>>>>>
>>>>>> Brett,
>>>>>>
>>>>>> Before I start trying to run the jobs manually, I want to give your
>>>>>> suggestion a try. I think I know where to configure the job polling
>>>>>> transaction time (I believe it's the poll-db-millis="20000" value on
>>>>>> the framework/service/config/serviceengine.xml.
>>>>>>
>>>>>> However, I still don't know what to increase it to. I understand that
>>>>>> we wouldn't want to make it bigger than the default polling interval.
>>>>>> Do you know what the default interval between polling is?
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> On Wed, Jul 13, 2011 at 12:31 PM, Brett Palmer <brettgpal...@gmail.com> 
>>>>>> wrote:
>>>>>>> I meant removing finished jobs.  If you have thousands of pending jobs 
>>>>>>> then
>>>>>>> you will have the same problem I mentioned in my first email.  One
>>>>>>> resolution will be to increase the job poller transaction time.  In the
>>>>>>> ofbiz version I was using there was not a way to configure the poller
>>>>>>> transaction time.  It just used the default time.  I had to create a 
>>>>>>> patch
>>>>>>> to allow this to happen.
>>>>>>>
>>>>>>> In the patch you had to be careful to not increase the transaction time
>>>>>>> greater than the frequency of the job poller.  Otherwise you get into a 
>>>>>>> lock
>>>>>>> situation where one job poller is still running within a transaction and
>>>>>>> another poller starts.  This didn't create a huge problem but the 
>>>>>>> second job
>>>>>>> poller would usually lock and then time out.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Brett
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Jul 13, 2011 at 1:15 PM, Josh Jacobson 
>>>>>>> <josh.s.jacob...@gmail.com>wrote:
>>>>>>>
>>>>>>>> Brett,
>>>>>>>>
>>>>>>>>

Reply via email to