Got it, do a counter fetch (CounterObject) from source which internally
does the sibling resolution, do a counter fetch from dest and increase
that counter by source-dest (if dest is null then 0) :D
I wish I could setCounter(n) instead of increase (only in this case) to
avoid extra fetch.
Guido.
On 29/01/14 11:44, Russell Brown wrote:
Oh damn, wait. You said 1.4.*. There might, therefore be siblings, do a counter
increment before the copy to ensure siblings are resolved (if you can.) Or use
RiakEE MDC.
On 29 Jan 2014, at 11:27, Guido Medina <[email protected]> wrote:
Hi,
We are using Riak Java client 1.4.x and we want to copy all counters from
cluster A to cluster B (all counters will be stored on a single to very few
buckets), if I list the keys using special 2i bucket index and then treat each
key as IRiakObject, will that be enough to copy counters, or will counter
siblings stop me from doing that? Since at Riak Java client CounterObject is
not an IRiakObject, it is instead an operation.
Comments at a working method:
Source bucket: Bucket from Riak client pointing to source cluster.
Dest bucket: Bucket from Riak client pointing to dest bucket.
protected void copyOneItem(final Bucket sourceBucket, final Bucket
destBucket, final String key) throws RiakRetryFailedException
{
final IRiakObject riakObject=sourceBucket.fetch(key).execute();
if(riakObject!=null){
destBucket.store(riakObject).withoutFetch().execute();
}
}
Regards,
Guido.
_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com