Bucket properties not updated

Jeremiah Peschka jeremiah.peschka at gmail.com
Wed Oct 9 15:42:49 EDT 2013


Could this be a duplicate of bug 660?
https://github.com/basho/riak_kv/issues/660

I can reliably reproduce this on a local 5 node stagedevrel cluster on Riak
1.4.2 and develop.

---
Jeremiah Peschka - Founder, Brent Ozar Unlimited
MCITP: SQL Server 2008, MVP
Cloudera Certified Developer for Apache Hadoop


On Wed, Oct 9, 2013 at 12:35 PM, Daniel Iwan <iwan.daniel at gmail.com> wrote:

> Thank for reply.
>
> The thing is that bucket never converges. The allow_mult remains false
> even several minutes after handoff had finished.
> I don't know whether it's because properties get overwritten by defaults
> during gossip or it's because message from client(s) never reaches Riak.
>
> This situation is potentially very dangerous for us. As I have no way of
> checking if allow_mult has incorrect value (Riak client returns true)
> it simply means write loss during updates.
>
> Is there a way to debug what's happening or check what's in the ring?
>
> Regards
> Daniel Iwan
>
>
>
> On 9 October 2013 20:08, Joe Caswell <jcaswell at basho.com> wrote:
>
>> Daniel,
>>
>>   Custom (i.e. non-default) bucket properties are currently stored in the
>> ring.  Once you set a bucket property on one node, the updated ring must be
>> gossiped to the other nodes.  I assume by 'vnode transfer' you mean
>> handoff.  An ownership handoff would also generate changes to the ring
>> which need to be gossiped, and so could slow the propagation of the bucket
>> data.  If you are setting bucket properties at multiple nodes
>> simultaneously,  there will be additional steps to resolve the change in
>> order for the ring to converge.  If all nodes are online and reachable, the
>> change should complete very quickly (I would consider 1 second somewhat
>> slow).
>>
>> Joe Caswell
>>
>> From: Daniel Iwan <iwan.daniel at gmail.com>
>> Date: Wednesday, October 9, 2013 7:39 AM
>> To: "riak-users at lists.basho.com" <riak-users at lists.basho.com>
>> Subject: Bucket properties not updated
>>
>> Hi
>>
>> With Java client 1.1.3 and Riak 1.3.1
>> I'm doing:
>>
>>         WriteBucket wb =
>> iclient.createBucket(BUCKET_NAME).nVal(3).allowSiblings(true);
>>         Bucket b = wb.execute();
>>
>> _logger.fine("Regular bucket: " + bucket + ", allows siblings? " +
>> bucket.getAllowSiblings());
>>
>>         DomainBucketBuilder< MyObjectInRiak > builder =
>> DomainBucket.builder(bucket, MyObjectInRiak.class);
>>
>>         builder.r(RIAK_TX_R_VALUE);
>>         builder.w(RIAK_TX_W_VALUE);
>>         builder.rw(RIAK_TX_RW_VALUE);
>>         builder.returnDeletedVClock(true);
>>         builder.returnBody(true);
>>         builder.basicQuorum(false);
>>
>> with custom resolver, mutator and converter.
>> This code runs on 3 servers at the same time during a test and I know
>> Riak db is empty
>> and bucket BUCKET_NAME does not exist.
>>
>> log shows that all 3 servers see allowSibbling set to true, but
>> occasionally test fails and curl shows allow_multi is false on that bucket!
>>
>> Is there any delay, race condition etc in Riak, or client library. that
>> would explain why that bucket property is not set?
>> During a test vnode transfer occurs but that should not matter I guess?
>>
>> Regards
>> Daniel
>>
>>
>> _______________________________________________ riak-users mailing list
>> riak-users at lists.basho.com
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>
>
>
> _______________________________________________
> riak-users mailing list
> riak-users at lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20131009/4282807e/attachment.html>


More information about the riak-users mailing list