FWIW- I've been working on Riak support for the spring-data project, which is 
Spring's NoSQL abstraction that will support a whole slew of NoSQL databases. 
I'm using it as the basis for the Grails Gorm support for Riak, which I'm also 
writing. It has support for getting and setting POJOs and whatnot using the 
Jackson JSON mapper. I've also included a fairly basic Map/Reduce abstraction.

This uses the Spring 3.0 RestTemplate abstraction rather than relying on a 
specific driver. It also uses the built-in conversion support for reading and 
writing JSON data and other types supported by the Spring 3.0.5 conversion 
mechanism.

I see you're using the PB driver, so none of this might apply to your case 
(we've talked about a good way to support both the REST API and the PB API in 
the same codebase but haven't decided on the best way to do that, if at all). 
It seems to be pretty easy to use and with the built-in support for ETag 
caching, it does make a difference in app performance.

https://github.com/SpringSource/spring-data-keyvalue


Thanks!

J. Brisbin
http://jbrisbin.com/


On Nov 20, 2010, at 2:28 PM, Andrea Campolonghi wrote:

> Andy,
> 
> I am testing but the issue is that Riak really miss a valid java driver.
> The one I am using is fine but has great issue of memory leaks ... sometimes 
> driver hangs ( riak is not even getting the connection ).
> 
> I will restart my server test and try again ....
> 
> Andrea
> 
> 2010/11/20 Andrea Campolonghi <acampolon...@gmail.com>
> Andy,
> 
> great to know.
> So you know is there a way to get if this marker?
> 
> Andrea
> 
> 2010/11/20 Andy Gross <a...@basho.com>
> 
> 
> Hi Andrea,
> 
> Key deletion in Riak doesn't occur immediately in Riak - keys are first 
> marked with a tombstone marker and then reaped asynchronously.   If you 
> insert a sleep between the delete() and keys() calls (try a few seconds) - 
> does the test pass?
> 
> - Andy
> 
> 
> On Sat, Nov 20, 2010 at 10:02 AM, Andrea Campolonghi <acampolon...@gmail.com> 
> wrote:
> I am having this issues with the java driver :
> https://github.com/krestenkrab/riak-java-pb-client
> 
> After deleting a key the listKeys method still return it.
> The following test case put and delete one simple key and fails when counting 
> the listKeys item.
> 
> Any Suggestion?
> 
> public class RiakCacheTest extends TestCase {
> 
> 
> private RiakClient rc;
> 
> private String host = "172.16.194.134";
> 
> private int port = 8087;
> 
> private String bucket = "bucket";
> 
> 
> 
> @Override
> 
> protected void setUp() throws Exception {
> 
> rc = new RiakClient(this.host,this.port);
> 
> rc.setClientID(this.getClass().toString());
> 
> }
> 
> 
> 
> public void testRemove(){
> 
> String key = "key";
> 
> String value = "Andrea";
> 
> 
> RiakObject obj = new RiakObject(this.bucket, key, value);
> 
> 
> try{
> 
> this.rc.store(obj);
> 
> assertTrue(getValue(key).equals(value));
> 
> assertEquals(keys().size(),1);
> 
> 
> this.rc.delete(this.bucket, key);
> 
> assertNull(getValue(key));
> 
> assertEquals(keys().size(),0);
> 
> 
> }catch(IOException e){
> 
> e.printStackTrace();
> 
> }
> 
> 
> }
> 
> 
> private String getValue(String key){
> 
> String fetched = "";
> 
> try{
> 
> RiakObject[] ros = this.rc.fetch(this.bucket, key);
> 
> for(RiakObject ro : ros){
> 
> return ro.getValue().toStringUtf8();
> 
> }
> 
> }catch(IOException e){
> 
> e.printStackTrace();
> 
> }
> 
> return null;
> 
> }
> 
> 
> 
> private List keys() {
> 
> ArrayList<String> result = new ArrayList<String>();
> 
> ByteString bucket = ByteString.copyFromUtf8(this.bucket);
> 
> 
> try{
> 
> KeySource keys = this.rc.listKeys(bucket);
> 
> while(keys.hasNext()){
> 
> String key = keys.next().toStringUtf8();
> 
> result.add(key);
> 
> }       
> 
> }catch(IOException e){
> 
> e.printStackTrace();
> 
> }
> 
> return result;
> 
> }
> 
> 
> 
> }
> 
> 
> -- 
> Andrea Campolonghi
> 
> Cell : +39 347 2298435
> acampolon...@gmail.com
> and...@andreacfm.com
> http://www.andreacfm.com
> 
> Railo Team
> and...@getrailo.org
> http://getrailo.org
> 
> 
> 
> _______________________________________________
> riak-users mailing list
> riak-users@lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> 
> 
> 
> 
> 
> 
> 
> -- 
> Andrea Campolonghi
> 
> Cell : +39 347 2298435
> acampolon...@gmail.com
> and...@andreacfm.com
> http://www.andreacfm.com
> 
> Railo Team
> and...@getrailo.org
> http://getrailo.org
> 
> 
> 
> 
> 
> -- 
> Andrea Campolonghi
> 
> Cell : +39 347 2298435
> acampolon...@gmail.com
> and...@andreacfm.com
> http://www.andreacfm.com
> 
> Railo Team
> and...@getrailo.org
> http://getrailo.org
> 
> 
> _______________________________________________
> 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