Thanks, it works now! 
i wouldn’t realize that bucket type had to be specified as a type. But i did 
say that i didn’t now what that meant. :)

I hope i can do all my experiments now,
Valter

No dia 20/11/2013, às 21:04, Valter Balegas <bale...@gmail.com> escreveu:

> Hello,
> 
> Here is the sequence of commands:
> 
> --Compiled Riak with "make rel" and riak-erlang-client with “make". Erlang 
> version R16B02; using the latest version on GitHub or the riak2.0.0.5pre 
> package.
> 
> ./bin/riak stop
> 
> --changed the consensus flag to true on ./etc/riak.conf
> 
> ./bin/riak start
> 
> .bin//riak-admin bucket-type create bucket '{"props": {"consistent": true}}'
> ./bin/riak-admin bucket-type activate bucket
> 
> ./bin/riak stop
> ./bin/riak start
> 
> on a erlang console, initialized with:
> 
> ./erts-5.10.3/bin/erl -pa ../riak-erlang-client/ebin 
> ../riak-erlang-client/deps/*/ebin
> 
> f(Pid), {ok, Pid} = riakc_pb_socket:start_link("localhost", 8087).
> NewA = riakc_obj:new(<<"bucket">>, <<"key">>, <<"my binary data">>).
> NewB = riakc_obj:new(<<"bucket">>, <<"key">>, <<"my other binary data">>).
> riakc_pb_socket:put(Pid, NewA, [return_body]).
> {ok,{riakc_obj,<<"bucket">>,<<"key">>,
>                <<107,206,97,96,96,96,204,96,202,5,82,28,202,156,255,126,
>                  6,245,74,255,202,96,74,...>>,
>                [{{dict,2,16,16,8,80,48,
>                        {[],[],[],[],[],[],[],[],[],[],[],[],...},
>                        {{[],[],[],[],[],[],[],[],[],[],...}}},
>                  <<"my binary data">>}],
>                undefined,undefined}}
> 5> riakc_pb_socket:put(Pid, NewB, [return_body]).
> {ok,{riakc_obj,<<"bucket">>,<<"key">>,
>                <<107,206,97,96,96,96,204,96,202,5,82,28,202,156,255,126,
>                  6,245,74,255,202,96,74,...>>,
>                [{{dict,2,16,16,8,80,48,
>                        {[],[],[],[],[],[],[],[],[],[],[],[],...},
>                        {{[],[],[],[],[],[],[],[],[],[],...}}},
>                  <<"my binary data">>},
>                 {{dict,2,16,16,8,80,48,
>                        {[],[],[],[],[],[],[],[],[],[],[],...},
>                        {{[],[],[],[],[],[],[],[],[],...}}},
>                  <<"my other binary data">>}],
>                undefined,undefined}}
> 
> bin/riak-admin bucket-type status bucket
> bucket is active
> 
> young_vclock: 20
> w: quorum
> small_vclock: 50
> rw: quorum
> r: quorum
> pw: 0
> precommit: []
> pr: 0
> postcommit: []
> old_vclock: 86400
> notfound_ok: true
> n_val: 3
> linkfun: {modfun,riak_kv_wm_link_walker,mapreduce_linkfun}
> last_write_wins: false
> dw: quorum
> consistent: true
> chash_keyfun: {riak_core_util,chash_std_keyfun}
> big_vclock: 50
> basic_quorum: false
> allow_mult: true
> active: true
> claimant: 'riak@127.0.0.1
> 
> bin/riak-admin bucket-type list
> bucket (active)
> 
> 
> 
> No dia 20/11/2013, às 17:23, Jordan West <jw...@basho.com> escreveu:
> 
>> Hi Valter,
>> 
>> Could you provide the code you are using to generate the concurrent requests 
>> in addition to the output of `riak-admin bucket-type list` and `riak-admin 
>> bucket-type status <buckettype>` where <buckettype> is the name of the 
>> strongly consistent bucket you created (from one node should be sufficient)? 
>> I've been using this feature in a personal project and just tested on a 
>> local cluster using curl and was unable to reproduce (the cluster was a bit 
>> behind develop but there have been no recent changes to the feature).
>> 
>> Cheers,
>> Jordan 
>> 
>> 
>> On Wed, Nov 20, 2013 at 5:30 AM, Valter Balegas <bale...@gmail.com> wrote:
>> Hello,
>> 
>> I was able to activate strong consistency, but the node keeps generating 
>> siblings, when i execute two concurrent writes (Store two objects without 
>> vector clock).
>> I tried with the Riak 2.0.0.5pre package and the latest version on the 
>> repository. Am i missing anything? i was expecting operations to fail, in 
>> this case.
>> 
>> It seems that the error was caused by my Erlang version. The creation of the 
>> bucket type didn’t fail with R16B02.
>> 
>> Valter
>> 
>> No dia 20/11/2013, às 03:13, Jordan West <jw...@basho.com> escreveu:
>> 
>>> Valter,
>>> 
>>> You mentioned you are using a recent develop. Would you be able to pull 
>>> down any recent changes and update-deps (or build a fresh devrel)? I just 
>>> tried a fresh clone of develop and was unable to reproduce the same error. 
>>> I, also, tried with R15B01 (Riak 2.0 is slated to use R16B02 right now). 
>>> 
>>> Alternatively, you should be able to workaround this by doing a `riak 
>>> attach-direct` and defining the atom at the erlang shell:
>>> 
>>> 1> consistent.
>>> consistent
>>> 
>>> Jordan
>>> 
>>> 
>>> On Tue, Nov 19, 2013 at 3:06 PM, Valter Balegas <bale...@gmail.com> wrote:
>>> I can’t create the bucket type:
>>> 
>>> RPC to 'riak@127.0.0.1' failed: {'EXIT',
>>>                                  {badarg,
>>>                                   [{erlang,list_to_existing_atom,
>>>                                     ["consistent"],
>>>                                     []},
>>>                                    {riak_kv_wm_utils,erlify_bucket_prop,1,
>>>                                     [{file,"src/riak_kv_wm_utils.erl"},
>>>                                      {line,393}]},
>>>                                    {riak_kv_console,
>>>                                     '-bucket_type_create/2-lc$^0/1-0-',1,
>>>                                     [{file,"src/riak_kv_console.erl"},
>>>                                      {line,483}]},
>>>                                    {riak_kv_console,bucket_type_create,2,
>>>                                     [{file,"src/riak_kv_console.erl"},
>>>                                      {line,483}]},
>>>                                    {rpc,'-handle_call_call/6-fun-0-',5,
>>>                                     [{file,"rpc.erl"},{line,203}]}]}}
>>> 
>>> I activated the consensus in riak.conf in the etc dir (find command seems 
>>> not to find the pattern anywhere else).
>>> Is there any other way to create the bucket?
>>> 
>>> Valter
>>> 
>>> No dia 19/11/2013, às 18:10, Jordan West <jw...@basho.com> escreveu:
>>> 
>>>> On Tue, Nov 19, 2013 at 7:33 AM, Valter Balegas <bale...@gmail.com> wrote:
>>>> 
>>>> Strong consistency:
>>>> How does one activate this? As i understand, either the pb or the http 
>>>> clients do not accept the consistent property.
>>>> 
>>>> 
>>>> Using strong consistency in the Tech Preview is a two-step process. First, 
>>>> turn on the feature in your riak.conf (the following command assumes you 
>>>> are using a devrel):
>>>> 
>>>> for d in dev/dev*; do sed -e 's/## enable_consensus = 
>>>> true/enable_consensus = true/' -i $d/etc/riak.conf; done
>>>> 
>>>> Then re(start) the cluster.
>>>> 
>>>> With the enable_consensus=true un-commented and the cluster running create 
>>>> a strongly consistent bucket type:
>>>> 
>>>> riak-admin bucket-type create <type name> '{"props": {"consistent": true}}'
>>>> riak-admin bucket-type activate <type name>
>>>> 
>>>> You can create and activate the bucket type without having 
>>>> enabled_consensus=true but  both must be done to work with strongly 
>>>> consistent data.
>>>> 
>>>> Once that is done you can make requests, just like you would to eventually 
>>>> consistent data in Riak, but the semantics will be different. For example, 
>>>> if you make two PUT requests to the same key, w/ no vector clock*, the 
>>>> second request will fail because the data already exists. More details on 
>>>> semantics of strongly consistent requests can be found in this PR: 
>>>> https://github.com/basho/riak_kv/pull/710
>>>> 
>>>> Hope that helps get you started,
>>>> 
>>>> Jordan
>>>> 
>>>> * in strong consistency, the "vector clock" is not really a vector clock. 
>>>> its called such for familiarity, but like any real vector clock exposed to 
>>>> the client, should be treated like an opaque context.
>>>>  
>>>> Details about my environment:
>>>> -I’m running Mac OSX 10.9
>>>> -Erlang R15B01
>>>> -Compiling riak “develop” branch, from basho github
>>>> -Compiling riak-erlang-client “master” branch, from basho github.
>>>> -recompiled the latest versions of the branches just before writing this 
>>>> email.
>>>> 
>>>> 
>>>> Thank you for your help,
>>>> Valter
>>>> 
>>>> 
>>>> 
>>>> _______________________________________________
>>>> riak-users mailing list
>>>> riak-users@lists.basho.com
>>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>>>> 
>>> 
>>> 
>> 
>> 
> 

_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to