My recommendation would be to create a new bucket with the wanted properties, 
and then move all objects, lazily if need be.  You could do it with a kind of 
read-repair: if an item is not in the new bucket (on lookup), then look it up 
in the old bucket and move it.

To work effectively with allow_mult=true you generally need a single point of 
entry in your code for reading values (because you only want conflict 
resolution code in one place anyway), and this place in your code might as well 
also be the place to do application-level read repair such as what you're 
asking about, but also the place to do lazy schema upgrades.

With such a setup in place, you can of course start a slow batch job that does 
all the conversion/moving in the background.  But if you have a lot of data is 
it probably impossible to do with no downtime any other way.

Kresten


On Jan 22, 2012, at 10:38 PM, Vishal Shah wrote:

We might have a need to change some bucket properties such as allow_mult in the 
near future.
What is the recommended approach to change these for an existing non-empty 
bucket.

I found good doc on changing back ends and requiring read repair. Didn't find 
anything on other bucket props.

Thanks.
V


_______________________________________________
riak-users mailing list
[email protected]<mailto:[email protected]>
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com



Mobile: + 45 2343 4626 | Skype: krestenkrabthorup | Twitter: @drkrab
Trifork A/S  |  Margrethepladsen 4  | DK- 8000 Aarhus C |  Phone : +45 8732 
8787  |  www.trifork.com<http://www.trifork.com>





_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to