Hi Hasitha,

Please find the comments in line for the ways of handling the issue.

1. Come to a default balance between the buffer size (currently 1000) and
the TTL value for each item in buffer (seconds) / make this configurable.

I don't think there is an impact of the ring buffer size on the expiration
of items. Increasing the TTL seems the only solution. But we did not
increase this since we needed to avoid the possibility of getting old
notifications in the case of a network failure or a crashed node. Making
the TTL configurable seems like a good solution.

2. In case the producing node is attempting an over-write on the buffer,
hold it until the buffer is processed. (flow control for subscriptions..)

This is provided by default configurations of Hazelcast 'RealiableTopic' as
per [1]

[1]
http://docs.hazelcast.org/docs/latest-dev/manual/html/reliabletopic.html#reliable-topic-configuration

Thank you

On Tue, Oct 13, 2015 at 8:07 PM, Hasitha Amal De Silva <hasit...@wso2.com>
wrote:

> increasing the Time-to-Live value [1] from 1 second to about 30 seconds
> got rid of this issue for my scenario. This exception can only occur if the
> item is expired or had been rewritten within the buffer as per [2].
>
> 2 ways to properly handle this as I can think :
>
> 1. Come to a default balance between the buffer size (currently 1000) and
> the TTL value for each item in buffer (seconds) / make this configurable.
> 2. In case the producing node is attempting an over-write on the buffer,
> hold it until the buffer is processed. (flow control for subscriptions..)
>
> For me, the issue was reproduced by creating about 400 durable JMS topic
> subscriptions with a ramp time of about 2 seconds from Jmeter.
>
> [1] : http://blog.hazelcast.com/ringbuffer-data-structure/
> [2] :
> http://docs.hazelcast.org/docs/3.5/javadoc/com/hazelcast/ringbuffer/StaleSequenceException.html
>
>
>
> On Tue, Oct 6, 2015 at 4:47 PM, Hasitha Hiranya <hasit...@wso2.com> wrote:
>
>> Hi Peter,
>>
>> We are using Hazelcast in our Message Broker project. We are getting
>> following exception when using a iTopic for syncing data.
>>
>> Appreciate any idea why this happen? Are we doing something wrong in our
>> client application?
>>
>> We found code [1] throwing the exception.
>>
>> Oct 06, 2015 4:26:44 PM
>> com.hazelcast.ringbuffer.impl.operations.ReadManyOperation
>> SEVERE: [192.168.1.50]:4000 [wso2.mb.domain] [3.5] sequence:8 is too
>> small. The current headSequence is:9
>> com.hazelcast.ringbuffer.StaleSequenceException: sequence:8 is too small.
>> The current headSequence is:9
>> at
>> com.hazelcast.ringbuffer.impl.RingbufferContainer.checkBlockableReadSequence(RingbufferContainer.java:176)
>> at
>> com.hazelcast.ringbuffer.impl.operations.ReadManyOperation.beforeRun(ReadManyOperation.java:55)
>> at
>> com.hazelcast.spi.impl.operationservice.impl.OperationRunnerImpl.run(OperationRunnerImpl.java:131)
>> at
>> com.hazelcast.spi.impl.operationexecutor.classic.OperationThread.processOperation(OperationThread.java:154)
>> at
>> com.hazelcast.spi.impl.operationexecutor.classic.OperationThread.process(OperationThread.java:110)
>> at
>> com.hazelcast.spi.impl.operationexecutor.classic.OperationThread.doRun(OperationThread.java:101)
>> at
>> com.hazelcast.spi.impl.operationexecutor.classic.OperationThread.run(OperationThread.java:76)
>>
>>
>> [1].
>> https://github.com/hazelcast/hazelcast/blob/master/hazelcast/src/main/java/com/hazelcast/ringbuffer/impl/RingbufferContainer.java
>>
>> Thanks
>>
>> --
>> *Hasitha Abeykoon*
>> Senior Software Engineer; WSO2, Inc.; http://wso2.com
>> *cell:* *+94 719363063*
>> *blog: **abeykoon.blogspot.com* <http://abeykoon.blogspot.com>
>>
>>
>> _______________________________________________
>> Dev mailing list
>> Dev@wso2.org
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Cheers,
>
> Hasitha Amal De Silva
> Software Engineer
> Mobile : 0772037426
> Blog    : http://devnutshell.tumblr.com/
> WSO2 Inc.: http://wso2.com ( lean.enterprise.middleware. )
>



-- 
Sasikala Kottegoda
*Software Engineer*
WSO2 Inc., http://wso2.com/
lean. enterprise. middleware
Mobile: +94 774835928/712792401
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to