Thanks Brian for putting fix together so quickly. I think I found something else though. In JSONConverter I don't see vclock being set in toDomain() when converting deleted sibling? That vclock should be used for following delete if I understood it correctly?
Also where can I download latest build? I tried http://riak-java-client.s3.amazonaws.com/riak-client-1.1.3-jar-with-dependencies.jar but access is denied Cheers Daniel On 3 October 2013 19:36, Brian Roach <ro...@basho.com> wrote: > On Thu, Oct 3, 2013 at 10:32 AM, Daniel Iwan <iwan.dan...@gmail.com> > wrote: > > Thanks Brian for quick response. > > > > As a side question, what is the best way to delete such an object i.e. > once > > I know one of the siblings has 'deleted' flag true because I fetched it? > > Should I just use DomainBucket.delete(key) without providing any vclock? > > Would it wipe it from Riak or create yet another sibling? > > You should always use vclocks when possible, which in the case it is. > There are additional issues around doing the delete without a vclock > and if there's concurrently a store operation occurring. > > Ideally you should look at why you're getting that tombstone sibling. > If it's simply a case of high write concurrency and you're using > vclocks with your writes, then there's not much you can do except > resolve it later (without changing how you're using the DB)... but > usually these things are caused by writes without a vclock. > > Thanks, > - Roach > > > > > > > > Regards > > Daniel > > > > > > On 3 October 2013 17:20, Brian Roach <ro...@basho.com> wrote: > >> > >> Daniel - > >> > >> Yeah, that is the case. When the ability to pass fetch/store/delete > >> meta was added to DomainBucket way back when it appears that was > >> missed. > >> > >> I'll add it and forward-port to 1.4.x as well and cut new jars. Should > >> be avail by tomorrow morning at the latest. > >> > >> Thanks! > >> - Roach > >> > >> On Thu, Oct 3, 2013 at 9:38 AM, Daniel Iwan <iwan.dan...@gmail.com> > wrote: > >> > Hi I'm using Riak 1.3.1 and Java client 1.1.2 > >> > > >> > Using http and curl I see 4 siblings for an object one of which has > >> > X-Riak-Deleted: true > >> > but when I'm using Java client with DomainBucket my Converter's method > >> > toDomain is called only 3 times. > >> > > >> > I have set the property > >> > > >> > builder.returnDeletedVClock(true); > >> > > >> > on my DomainBuilder which I keep reusing for all queries and store > >> > operations (I guess that's good practice btw.?) > >> > > >> > > >> > I run that under debugger and it seems raw client sees 4 siblings but > >> > passes > >> > over only 3 due to bug (I think) in DomainBucket.fetch() method which > >> > should > >> > have > >> > > >> > if (fetchMeta.hasReturnDeletedVClock()) { > >> > > >> > > so.returnDeletedVClock(fetchMeta.getReturnDeletedVClock()); > >> > > >> > } > >> > > >> > at the end, as store() method has. > >> > > >> > Could you confirm or I'm I completely wrong? > >> > > >> > > >> > Regards > >> > > >> > Daniel > >> > > >> > > >> > _______________________________________________ > >> > 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