<div dir="ltr">Hey Henning,<div><br></div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span style="color:rgb(0,0,0);font-size:12.8px">Almost everything is stored in bitcask, but for some<br></span><span style="color:rgb(0,0,0);font-size:12.8px">progress-information-items, we are using the memory backend with<br></span><span style="color:rgb(0,0,0);font-size:12.8px">automatic expiration. Thus, the multibackend is being configured<br></span><span style="color:rgb(0,0,0);font-size:12.8px">(app.config for the old nodes, riak.conf for the new nodes). In the<br></span><span style="color:rgb(0,0,0);font-size:12.8px">past, I have configured bucket properties in Java (here in<br></span><span style="color:rgb(0,0,0);font-size:12.8px">riak-java-client 2 syntax):</span></blockquote><div>...</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span style="color:rgb(0,0,0);font-size:12.8px">Is this equivalent to specifying a bucket type?</span> </blockquote><div><br></div><div>Not exactly, that code will set the backend for that bucket, which is in the default bucket type. </div><div>If you need to specify a bucket-type, it's just an extra parameter on the Namespace ctor:</div><span style="color:rgb(0,0,0);font-size:12.8px">  </span></div><div><font face="monospace, monospace"><span style="color:rgb(0,0,0);font-size:12.8px">Namespace ns = new Namespace(bucketType, bucketName);</span></font></div><div><font face="monospace, monospace"><br></font></div><div><span style="font-family:arial,helvetica,sans-serif">If you'd like everything in a bucket-type to be on the memory backend, you should be able to specify that backend in the bucket type properties when creating it with riak-admin. The bucket type'd namespace wont' be available to the old Riak nodes though :/ </span><br></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"><br></font><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"> <span style="color:rgb(0,0,0);font-size:12.8px">How does a cluster behave where some nodes have the multibackend</span></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span style="color:rgb(0,0,0);font-size:12.8px">configured (in riak.conf), and others not (because you forgot)?<br></span><span style="color:rgb(0,0,0);font-size:12.8px">What happens if you configure the multibackend afterwards? Is the<br></span><span style="color:rgb(0,0,0);font-size:12.8px">bucket with all its data being migrated? Can you detect in which<br></span><span style="color:rgb(0,0,0);font-size:12.8px">*backend* an object is located?</span></blockquote></div><div><br></div><div>Anything without the multibackend config should automatically save/load to whatever the configured (or default) backend is.   If you configure it afterwards, the data won't be available b/c it's on a backend it's now not configured for.</div><div><br></div><div>If you need to move it, it's possible to use Multi-backend + a temp bucket to move the data from the old backend to the new one - it's a bit of a procedure though. </div><div><br></div><div>Thanks,</div><div>Alex</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Aug 9, 2016 at 10:42 AM, Henning Verbeek <span dir="ltr"><<a href="mailto:hankipanky@gmail.com" target="_blank">hankipanky@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We're slowly migrating our application from Riak KV 1.4 to Riak KV<br>
2.1.4, and at the same time riak-java-client 1.4.x to riak-java-client<br>
2.0.6. We are doing this by adding seven new Riak KV 2.1 nodes to the<br>
ring, and later removing the seven Riak KV 1.4 nodes from the ring.<br>
For a few days, the cluster will consist of a mix.<br>
<br>
Almost everything is stored in bitcask, but for some<br>
progress-information-items, we are using the memory backend with<br>
automatic expiration. Thus, the multibackend is being configured<br>
(app.config for the old nodes, riak.conf for the new nodes). In the<br>
past, I have configured bucket properties in Java (here in<br>
riak-java-client 2 syntax):<br>
<br>
  Namespace ns = new Namespace(bucketName);<br>
  StoreBucketProperties.Builder builder = new StoreBucketProperties.Builder(<wbr>ns);<br>
  builder.withBackend(<wbr>backendName);<br>
  riakClient.execute(builder.<wbr>build());<br>
<br>
Is this equivalent to specifying a bucket type?<br>
<br>
How does a cluster behave where some nodes have the multibackend<br>
configured (in riak.conf), and others not (because you forgot)?<br>
What happens if you configure the multibackend afterwards? Is the<br>
bucket with all its data being migrated? Can you detect in which<br>
*backend* an object is located?<br>
<br>
Thanks guys! Cheers, Henning<br>
<span class="HOEnZb"><font color="#888888">--<br>
My other signature is a regular expression.<br>
<a href="http://www.pray4snow.de" rel="noreferrer" target="_blank">http://www.pray4snow.de</a><br>
<br>
______________________________<wbr>_________________<br>
riak-users mailing list<br>
<a href="mailto:riak-users@lists.basho.com">riak-users@lists.basho.com</a><br>
<a href="http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com" rel="noreferrer" target="_blank">http://lists.basho.com/<wbr>mailman/listinfo/riak-users_<wbr>lists.basho.com</a><br>
</font></span></blockquote></div><br></div>