Hi All, We write a bridge information in config DS and reading the same in next few lines of code. (used 3 node cluster setup).
write operation is performed via org.opendaylight.netvirt.utils.mdsal.utils.MdsalUtils::put call and read is performed via MdsalUtils::read call. Observed that in MdsalUtils::put call ‘future.checkedGet()’ returns true immediately but when verified the data in config DS right after ‘return true’ assuming that data is written to config DS but found value is not present in DS. What is the problem and Is there any way to encounter this problem. Please let us know. Please find the below responses for the same query from Sam and Vishal. Thanks, Hari From: Vishal Thapar [mailto:vishal.tha...@ericsson.com] Sent: Wednesday, February 22, 2017 10:50 AM To: N Vivekanandan <n.vivekanan...@ericsson.com<mailto:n.vivekanan...@ericsson.com>>; Sam Hague <sha...@redhat.com<mailto:sha...@redhat.com>>; Hari Prasad <hari...@hcl.com<mailto:hari...@hcl.com>> Cc: netvirt-...@lists.opendaylight.org<mailto:netvirt-...@lists.opendaylight.org> Subject: RE: [netvirt-dev] Delay in reading data from Config DS after a write Hi Vivek, Someone from Clustering can answer it better, but it basically boils down to what constitutes a successful write in any cluster setup. Does write return success when data is queued to leader node, written on leader node or replicated throughout cluster? When does read return data, if its present on leader or replicated across cluster? Read consistency and write consistency in a cluster can be configured differently and based on network conditions it is possible for data to be not available for read after a successful write. Regards, Vishal. From: N Vivekanandan Sent: 22 February 2017 10:24 To: Vishal Thapar <vishal.tha...@ericsson.com<mailto:vishal.tha...@ericsson.com>>; Sam Hague <sha...@redhat.com<mailto:sha...@redhat.com>>; Hari Prasad <hari...@hcl.com<mailto:hari...@hcl.com>> Cc: netvirt-...@lists.opendaylight.org<mailto:netvirt-...@lists.opendaylight.org> Subject: RE: [netvirt-dev] Delay in reading data from Config DS after a write Hi Vishal, The checkedFutures.get() is used extensively in many places. Regardless of 3-nodes setups and distribution of shards , It is expected that the checkedGet() returns only after the write to the respective datastore has succeeded. If that is not so, we would like to know why? -- Thanks, Vivek From: netvirt-dev-boun...@lists.opendaylight.org<mailto:netvirt-dev-boun...@lists.opendaylight.org> [mailto:netvirt-dev-boun...@lists.opendaylight.org] On Behalf Of Vishal Thapar Sent: Wednesday, February 22, 2017 10:17 AM To: Sam Hague <sha...@redhat.com<mailto:sha...@redhat.com>>; Hari Prasad <hari...@hcl.com<mailto:hari...@hcl.com>> Cc: netvirt-...@lists.opendaylight.org<mailto:netvirt-...@lists.opendaylight.org> Subject: Re: [netvirt-dev] Delay in reading data from Config DS after a write Hi Hari, As Sam pointed out data can take time to reflect in DataStore in a clustere setup if you do a write from one of the follower nodes of that shard. Since this is cluster setup, what about the code that is doing the write? Is it chcking for leadership before writing or doing write on each node [shouldn’t]? If it is checking for leadership, what is the entity used with EoS? Regards, Vishal. From: netvirt-dev-boun...@lists.opendaylight.org<mailto:netvirt-dev-boun...@lists.opendaylight.org> [mailto:netvirt-dev-boun...@lists.opendaylight.org] On Behalf Of Sam Hague Sent: 21 February 2017 20:45 To: Hari Prasad <hari...@hcl.com<mailto:hari...@hcl.com>> Cc: netvirt-...@lists.opendaylight.org<mailto:netvirt-...@lists.opendaylight.org> Subject: Re: [netvirt-dev] Delay in reading data from Config DS after a write On Tue, Feb 21, 2017 at 7:50 AM, Hari Prasad <hari...@hcl.com<mailto:hari...@hcl.com>> wrote: Hi All, We write a bridge information in config DS and reading the same in next few lines of code write operation is performed via org.opendaylight.netvirt.utils.mdsal.utils.MdsalUtils::put call and read is performed via MdsalUtils::read call. Observed that in MdsalUtils::put call ‘future.checkedGet()’ returns true immediately but when verified the data in config DS right after ‘return true’ assuming that data is written to config DS but found value is not present in DS. Hari, is this a 3node setup? Can you also check if the checkedGet is really called? I think in the 3node setup ovsdb southbound fakes out the writes - checks ownership and if false just returns true. eventually the owner node will write the same data. What is the problem and Is there any way to encounter this problem. Please let us know Thanks, Hari ::DISCLAIMER:: ---------------------------------------------------------------------------------------------------------------------------------------------------- The contents of this e-mail and any attachment(s) are confidential and intended for the named recipient(s) only. E-mail transmission is not guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or may contain viruses in transmission. The e mail and its contents (with or without referred errors) shall therefore not attach any liability on the originator or HCL or its affiliates. Views or opinions, if any, presented in this email are solely those of the author and may not necessarily reflect the views or opinions of HCL or its affiliates. Any form of reproduction, dissemination, copying, disclosure, modification, distribution and / or publication of this message without the prior written consent of authorized representative of HCL is strictly prohibited. If you have received this email in error please delete it and notify the sender immediately. Before opening any email and/or attachments, please check them for viruses and other defects. ---------------------------------------------------------------------------------------------------------------------------------------------------- _______________________________________________ netvirt-dev mailing list netvirt-...@lists.opendaylight.org<mailto:netvirt-...@lists.opendaylight.org> https://lists.opendaylight.org/mailman/listinfo/netvirt-dev
_______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev