Hello Val, I debug further and found out that issue exist with SPA ( Angular APP ) and it needs a fix on their end so don't worry about it.
Next week, I will deploy it in a cluster and let you know if that fixes session replication issue on cluster. Thanks, Rishi On Thu, Apr 13, 2017 at 7:55 AM, Rishi Yagnik <rishiyag...@gmail.com> wrote: > Val, > > Yes I would provide you the exact steps today and I will also test it in > cluster environment. > > The local environment is working as expected with the fix. > > Take Care, > Rishi > > > On Apr 13, 2017, at 2:18 AM, Valentin Kulichenko < > valentin.kuliche...@gmail.com> wrote: > > > > Rishi, > > > > Can you tell exact steps to reproduce? It's working for me in my > > environment. > > > > Do I understand correctly that apart from the token issue, it works fine > > with new version? > > > > -Val > > > > On Wed, Apr 12, 2017 at 10:00 PM, Rishi Yagnik <rishiyag...@gmail.com> > > wrote: > > > >> Val, > >> > >> I build it from master s and was able to integrate with our app, but as > I > >> mentioned to you previously, I see the XSRF-Token errors in debug log, > >> > >> [DEBUG] [XNIO-2 task-4] org.springframework.security. > web.FilterChainProxy > >> - > >> /app/xxx/yyy/zz/A at position 3 of 13 in additional filter chain; firing > >> Filter: 'HeaderWriterFilter' > >> [DEBUG] [XNIO-2 task-4] org.springframework.security. > web.FilterChainProxy > >> - > >> /app/xxx/yyy/zz/A at position 4 of 13 in additional filter chain; firing > >> Filter: 'CsrfFilter' > >> > >> [DEBUG] [XNIO-2 task-4] org.springframework.security.web.csrf.CsrfFilter > - > >> Invalid CSRF token found for http://localhost:9002/app/xxx/yyy/zz/A > >> > >> And, then after, CSRF filter does not like the session, redirects to > /403 > >> error. > >> > >> Just wondering why the XSRF Token is not being saved in the session ? > >> > >> More debugging is require for sure.. > >> > >> of course there is a work around to the problem, I can just use Cookie > >> based Token repository to avoid this issue. > >> > >> .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()) > >> > >> > >> will let you know my findings.. > >> > >> As always, thanks for all your help. > >> > >> Thanks, > >> Rishi > >> > >> > >> On Tue, Apr 11, 2017 at 4:18 PM, Rishi Yagnik <rishiyag...@gmail.com> > >> wrote: > >> > >>> Hi Val, > >>> > >>> I will build it from master s and let you know by tomorrow. > >>> > >>> Thanks, > >>> > >>> > >>> On Tue, Apr 11, 2017 at 3:53 PM, Valentin Kulichenko < > >>> valentin.kuliche...@gmail.com> wrote: > >>> > >>>> Hi Rishi, > >>>> > >>>> What was the issue with the HttpSessionCsrfTokenRepository? I didn't > >> have > >>>> any problems after I added code you provided. > >>>> > >>>> The fix for [1] is already in master. Can you try building from there > >> and > >>>> check if everything works fine for you? > >>>> > >>>> [1] https://issues.apache.org/jira/browse/IGNITE-4948 > >>>> > >>>> -Val > >>>> > >>>> On Sat, Mar 18, 2017 at 5:15 PM, Denis Magda <dma...@gridgain.com> > >> wrote: > >>>> > >>>>> Somewhere in April. This will be clarified on the dev list soon. > >>>>> > >>>>> On Saturday, March 18, 2017, Rishi Yagnik <rishiyag...@gmail.com> > >>>> wrote: > >>>>> > >>>>>> Thanks, Val. > >>>>>> > >>>>>> When are we going to release Ignite 2.0 ? June ?? > >>>>>> > >>>>>> Thanks, > >>>>>> > >>>>>> On Sat, Mar 18, 2017 at 6:02 AM, Valentin Kulichenko < > >>>>>> valentin.kuliche...@gmail.com <javascript:;>> wrote: > >>>>>> > >>>>>>> Denis, > >>>>>>> > >>>>>>> Yes, this should be possible. I will try to finalize the fix asap. > >>>>>>> > >>>>>>> -Val > >>>>>>> > >>>>>>> On Fri, Mar 17, 2017 at 7:46 PM, Denis Magda <dma...@apache.org > >>>>>> <javascript:;>> wrote: > >>>>>>> > >>>>>>>> Val, > >>>>>>>> > >>>>>>>> Will it be possible to incorporate the fix into the nearest 2.0 > >>>>>> release? > >>>>>>>> > >>>>>>>> — > >>>>>>>> Denis > >>>>>>>> > >>>>>>>>> On Mar 17, 2017, at 11:43 AM, Rishi Yagnik < > >>>> rishiyag...@gmail.com > >>>>>> <javascript:;>> > >>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>> Hi Val, > >>>>>>>>> > >>>>>>>>> Hope you are well, any update on web session clustering. > >>>>>>>>> > >>>>>>>>> Thanks, > >>>>>>>>> Rishi > >>>>>>>>> > >>>>>>>>> On Sat, Mar 11, 2017 at 12:29 PM, Rishi Yagnik < > >>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>>> Hi Val, > >>>>>>>>>> > >>>>>>>>>> Thanks looking forward for the fix.. > >>>>>>>>>> > >>>>>>>>>> Take Care, > >>>>>>>>>> Rishi > >>>>>>>>>> > >>>>>>>>>>> On Mar 11, 2017, at 11:31 AM, Valentin Kulichenko < > >>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> wrote: > >>>>>>>>>>> > >>>>>>>>>>> Hi Rishi, > >>>>>>>>>>> > >>>>>>>>>>> I want to fix the bug first. It takes a bit longer than I > >>>>> thought, > >>>>>>> but > >>>>>>>> I > >>>>>>>>>>> should finish it over the weekend. > >>>>>>>>>>> > >>>>>>>>>>> -Val > >>>>>>>>>>> > >>>>>>>>>>>> On Fri, Mar 10, 2017 at 4:13 AM, Rishi Yagnik < > >>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>> wrote: > >>>>>>>>>>>> > >>>>>>>>>>>> Hi Val, > >>>>>>>>>>>> > >>>>>>>>>>>> Did you chance to look into session handling issue ? > >>>>>>>>>>>> > >>>>>>>>>>>> Thanks, > >>>>>>>>>>>> > >>>>>>>>>>>> On Mon, Mar 6, 2017 at 3:37 PM, Rishi Yagnik < > >>>>>> rishiyag...@gmail.com <javascript:;> > >>>>>>>> > >>>>>>>>>>>> wrote: > >>>>>>>>>>>> > >>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>> > >>>>>>>>>>>>> Do you think I can test a fix in 1.9 RC releases ? How are > >>>> you > >>>>>>>> planning > >>>>>>>>>>>> to > >>>>>>>>>>>>> release a fix ? > >>>>>>>>>>>>> > >>>>>>>>>>>>> Did you also look into problem where storing xsrf token in > >>>>> Ignite > >>>>>>>>>> returns > >>>>>>>>>>>>> an exception and does not behave as expected ? > >>>>>>>>>>>>> > >>>>>>>>>>>>> In SecurityConfig.java use HttpSessionCsrfTokenRepository > >>>> with > >>>>>>>>>> following > >>>>>>>>>>>>> code - > >>>>>>>>>>>>> > >>>>>>>>>>>>> .csrfTokenRepository(csrfTokenRepository()) > >>>>>>>>>>>>> > >>>>>>>>>>>>> private CsrfTokenRepository csrfTokenRepository() { > >>>>>>>>>>>>> HttpSessionCsrfTokenRepository repository = new > >>>>>>>>>>>> HttpSessionCsrfTokenRepository(); > >>>>>>>>>>>>> repository.setHeaderName("X-XSRF-TOKEN"); > >>>>>>>>>>>>> return repository; > >>>>>>>>>>>>> } > >>>>>>>>>>>>> > >>>>>>>>>>>>> Thank you for all your help, > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> On Mon, Mar 6, 2017 at 2:34 PM, Valentin Kulichenko < > >>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> wrote: > >>>>>>>>>>>>> > >>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> I got to the bottom of it. Basically, the session is > >>>> replaced > >>>>> in > >>>>>>>>>> Spring > >>>>>>>>>>>>>> filter, but caching happens based on the old version > >> which > >>>>>> doesn't > >>>>>>>>>> have > >>>>>>>>>>>>>> security attributes. The fix is going to be very easy, I > >>>> will > >>>>> do > >>>>>>> it > >>>>>>>>>>>>>> tomorrow. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> On Mon, Mar 6, 2017 at 7:34 PM, Rishi Yagnik < > >>>>>>> rishiyag...@gmail.com <javascript:;> > >>>>>>>>> > >>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Val, > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Did you get chance to play around with the code ? > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> On Sun, Mar 5, 2017 at 7:25 PM, Rishi Yagnik < > >>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Val, > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Adding a filter before csrf filter will invoke the > >> custom > >>>>>> ignite > >>>>>>>>>>>>>> filter. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Declare a custom filter class extends it with > >> websession > >>>>>> filter > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> public class CustomWebSessionFilter extends > >>>>> WebSessionFilter { > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> private static boolean igniteInitialize = false > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> @Override public void doFilter(ServletRequest req, > >>>>>>> ServletResponse > >>>>>>>>>>>>>> res, > >>>>>>>>>>>>>>>> FilterChain chain) > >>>>>>>>>>>>>>>> throws IOException, ServletException { > >>>>>>>>>>>>>>>> if(!igniteInitialize) { > >>>>>>>>>>>>>>>> super.init(new FilterConfig() { > >>>>>>>>>>>>>>>> @Override > >>>>>>>>>>>>>>>> public String getFilterName() { > >>>>>>>>>>>>>>>> return "CustomWebSessionFilter"; > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> @Override > >>>>>>>>>>>>>>>> public ServletContext > >> getServletContext() { > >>>>>>>>>>>>>>>> return req.getServletContext(); > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> @Override > >>>>>>>>>>>>>>>> public String getInitParameter(String > >>>> name) { > >>>>>>>>>>>>>>>> return null; > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> @Override > >>>>>>>>>>>>>>>> public Enumeration<String> > >>>>>>> getInitParameterNames() { > >>>>>>>>>>>>>>>> return null; > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> }); > >>>>>>>>>>>>>>>> igniteInitialize = true; > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> super.doFilter(req,res,chain); > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> } > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> And in SecurityConfig.java add following line to invoke > >>>>> filter > >>>>>>>>>>>> before > >>>>>>>>>>>>>>>> Ignite Web Session filter - > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> .addFilterBefore(new ArWebSessionFilter(), > >>>> CsrfFilter.class) > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Hope it helps.. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> On Sun, Mar 5, 2017 at 1:28 PM, Valentin Kulichenko < > >>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> wrote: > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Rishi, > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Can you please share how you forced Ignite filter to > >> be > >>>>>> invoked > >>>>>>>>>>>>>> before > >>>>>>>>>>>>>>>>> security filter? > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> On Sun, Mar 5, 2017 at 11:20 AM, Rishi Yagnik < > >>>>>>>>>>>> rishiyag...@gmail.com <javascript:;> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Thanks for the response, we have executed ignite > >> filter > >>>>>> before > >>>>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>>> security filter but somehow the ignite filter does > >> not > >>>> do > >>>>>> the > >>>>>>>> job > >>>>>>>>>>>>>> of > >>>>>>>>>>>>>>>>>> setting spring principle context. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> As a result even though we have spring principle in > >>>>> session, > >>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>> filter > >>>>>>>>>>>>>>>>>> does not recognize it and sends us back to log in > >> page. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> I think there s some more work needed here to change > >>>> the > >>>>>>> filter > >>>>>>>>>>>> and > >>>>>>>>>>>>>>> make > >>>>>>>>>>>>>>>>>> it work with spring boot application. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Take Care, > >>>>>>>>>>>>>>>>>> Rishi > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> On Mar 5, 2017, at 10:16 AM, Valentin Kulichenko < > >>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> wrote: > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> I did some debugging. Apparently, the reason for > >> this > >>>>>>> behavior > >>>>>>>>>>>> is > >>>>>>>>>>>>>>> that > >>>>>>>>>>>>>>>>>>> Spring Security filter resides before Ignite's > >> filter > >>>> in > >>>>>> the > >>>>>>>>>>>>>> chain > >>>>>>>>>>>>>>>>> list. > >>>>>>>>>>>>>>>>>> I > >>>>>>>>>>>>>>>>>>> think that eventually this should be fixed in the > >>>>> product, > >>>>>>> but > >>>>>>>>>>>> in > >>>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>> meantime there must be a way to work around the > >>>> problem > >>>>> by > >>>>>>>>>>>>>>> controlling > >>>>>>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>> order. Do you know how this can be done in Spring > >>>> Boot? > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> On Tue, Feb 28, 2017 at 9:31 AM, Rishi Yagnik < > >>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> Sorry for pestering, thanks for all your help. > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> Rishi > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> On Mon, Feb 27, 2017 at 7:22 PM, Valentin > >> Kulichenko > >>>> < > >>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> > >> wrote: > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> Sorry, not yet. But this on my short list of > >> TODOs, > >>>>> will > >>>>>>> try > >>>>>>>>>>>> to > >>>>>>>>>>>>>>>>> give an > >>>>>>>>>>>>>>>>>>>>> update as soon as possible. > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> On Mon, Feb 27, 2017 at 7:47 AM, Rishi Yagnik < > >>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> any update on session replication issue ? > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>>>>>>> Rishi > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> On Thu, Feb 23, 2017 at 8:07 AM, Rishi Yagnik < > >>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> Thanks Val for looking into it. > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> On Wed, Feb 22, 2017 at 9:32 PM, Valentin > >>>> Kulichenko > >>>>> < > >>>>>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> > >>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> Got it, I think I'm reproducing the issue. I'll > >>>>> take a > >>>>>>>>>>>> look > >>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>> let > >>>>>>>>>>>>>>>>>>>>> you > >>>>>>>>>>>>>>>>>>>>>>>> know my findings soon. > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 21, 2017 at 7:27 PM, Rishi Yagnik < > >>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> The issue will occur in cluster environment, > >>>> please > >>>>>>> setup > >>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>>>>>>>>> boot > >>>>>>>>>>>>>>>>>>>>>>>>> on 2 different host with LB (F5 OR Reverse > >>>> proxy) > >>>>> in > >>>>>>>>>>>> front > >>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>> try > >>>>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>>>> login. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> In cluster environment, Spring security does > >> not > >>>>>>>>>>>> recognize > >>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>>>> session > >>>>>>>>>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>>>>>> the host you are not logged in, as a result, > >>>> spring > >>>>>>>>>>>>>> security > >>>>>>>>>>>>>>>>> will > >>>>>>>>>>>>>>>>>>>>>>>> redirect > >>>>>>>>>>>>>>>>>>>>>>>>> to login url however the correct behavior > >>>> should be > >>>>>>> that > >>>>>>>>>>>>>> user > >>>>>>>>>>>>>>>>>>>> would > >>>>>>>>>>>>>>>>>>>>>> stay > >>>>>>>>>>>>>>>>>>>>>>>>> logged in with session replication. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Do let me know if you need more information. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>>>>>>>>>> Rishi > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 21, 2017 at 7:08 PM, Valentin > >>>>> Kulichenko > >>>>>> < > >>>>>>>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com <javascript:;>> > >>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>> I was able to build and run the application. > >>>> Can > >>>>> you > >>>>>>>>>>>> give > >>>>>>>>>>>>>>> some > >>>>>>>>>>>>>>>>>>>>>>>>> description > >>>>>>>>>>>>>>>>>>>>>>>>>> on what should I test to understand the > >> issue? > >>>>> What > >>>>>>>>>>>>>> exactly > >>>>>>>>>>>>>>>>>>>> didn't > >>>>>>>>>>>>>>>>>>>>>>>> work > >>>>>>>>>>>>>>>>>>>>>>>>> for > >>>>>>>>>>>>>>>>>>>>>>>>>> you? > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>> On Wed, Feb 15, 2017 at 10:52 AM, Valentin > >>>>>> Kulichenko > >>>>>>> < > >>>>>>>>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com > >> <javascript:;>> > >>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks, I'll take a look. > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> On Wed, Feb 15, 2017 at 9:07 AM, Rishi > >> Yagnik > >>>> < > >>>>>>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> As promised, please find attached code for > >>>>> spring > >>>>>>> boot > >>>>>>>>>>>>>>>>>>>>>> integration > >>>>>>>>>>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>>>>> spring security along with Ignite. > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Some more information on project - > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> - It is a maven project ( Ignite 1.7.0, SB > >>>>> 1.4.3 ) > >>>>>>>>>>>>>>>>>>>>>>>>>>>> - spring security integrated with boot > >>>> project > >>>>>> along > >>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>> ignite > >>>>>>>>>>>>>>>>>>>>>>>>>>>> - HttpSessionCookieCsrfTokenRepository > >> does > >>>> not > >>>>>>>>>>>> work, > >>>>>>>>>>>>>>>>>>>> gives > >>>>>>>>>>>>>>>>>>>>>>>>>>>> intermediate errors on single instance so > >>>> used > >>>>>>>>>>>>>>>>>>>>>>>>>> CookieCsrfTokenRepository > >>>>>>>>>>>>>>>>>>>>>>>>>>>> for CSRF token, again I think we need a fix > >>>> here > >>>>>>>>>>>> from > >>>>>>>>>>>>>>>>>>>>> Ignite. > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> I cant reproduce this errors while I am > >>>> running > >>>>> on > >>>>>>>>>>>>>> single > >>>>>>>>>>>>>>>>>>>>>> instance, > >>>>>>>>>>>>>>>>>>>>>>>>> you > >>>>>>>>>>>>>>>>>>>>>>>>>>>> need to run this app on 2 spring boot > >>>> instance > >>>>>>> having > >>>>>>>>>>>>>> proxy > >>>>>>>>>>>>>>>>>>>> in > >>>>>>>>>>>>>>>>>>>>>>>> front ( > >>>>>>>>>>>>>>>>>>>>>>>>>> F5, > >>>>>>>>>>>>>>>>>>>>>>>>>>>> OR any proxy ) with round robin fashion ( > >> no > >>>>>> sticky > >>>>>>>>>>>>>> session > >>>>>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>> F5 > >>>>>>>>>>>>>>>>>>>>>>>> OR > >>>>>>>>>>>>>>>>>>>>>>>>>>>> proxies ). > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> We were thinking with round robin the user > >>>>> session > >>>>>>>>>>>> will > >>>>>>>>>>>>>>>>>>>> active > >>>>>>>>>>>>>>>>>>>>>>>> since > >>>>>>>>>>>>>>>>>>>>>>>>> we > >>>>>>>>>>>>>>>>>>>>>>>>>>>> used session replication on backend. > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Do let me know if you need more information > >>>>> here. > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 14, 2017 at 9:57 PM, Rishi > >>>> Yagnik < > >>>>>>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> Val, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> My SB sample project is ready however I > >> have > >>>>>> asked > >>>>>>>>>>>> for > >>>>>>>>>>>>>> an > >>>>>>>>>>>>>>>>>>>>>>>> approval to > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> submit sample project to you, it would > >> take > >>>> day > >>>>>> or > >>>>>>>>>>>> two. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> I will keep you posted. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks for all your help, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 14, 2017 at 3:51 PM, Rishi > >>>> Yagnik < > >>>>>>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;> > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Let me build an example app for you and > >>>> send > >>>>> it > >>>>>>>>>>>>>> across to > >>>>>>>>>>>>>>>>>>>>> you. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 14, 2017 at 3:28 PM, Valentin > >>>>>>>>>>>> Kulichenko < > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com > >>>> <javascript:;>> > >>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> No I don't, and I think that's what we > >>>> should > >>>>>>> start > >>>>>>>>>>>>>>> with. > >>>>>>>>>>>>>>>>>>>> I > >>>>>>>>>>>>>>>>>>>>>>>> want to > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> understand a use case that is currently > >>>> not > >>>>>>>>>>>> supported > >>>>>>>>>>>>>>> (if > >>>>>>>>>>>>>>>>>>>>> any) > >>>>>>>>>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>>>>>> then > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> find the best solution. And I would like > >>>> to > >>>>>> reuse > >>>>>>>>>>>>>>> existing > >>>>>>>>>>>>>>>>>>>>>> code > >>>>>>>>>>>>>>>>>>>>>>>> as > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> much as > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> possible. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Do you have any code that reproduces the > >>>>>> problem > >>>>>>>>>>>> you > >>>>>>>>>>>>>> had > >>>>>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>> how > >>>>>>>>>>>>>>>>>>>>>>>>> you > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tried > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to utilize current web session > >> clustering? > >>>>> Can > >>>>>>> you > >>>>>>>>>>>>>> share > >>>>>>>>>>>>>>>>>>>> it > >>>>>>>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>> us? > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 14, 2017 at 11:28 AM, Rishi > >>>>> Yagnik > >>>>>> < > >>>>>>>>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Val, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am working on SB platform with spring > >>>>>> security > >>>>>>>>>>>>>> and we > >>>>>>>>>>>>>>>>>>>>>> found > >>>>>>>>>>>>>>>>>>>>>>>> out > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that the > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> web session filter ignite provides does > >>>> not > >>>>>> work > >>>>>>>>>>>> for > >>>>>>>>>>>>>>>>>>>>> session > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> management on > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2 node spring boot cluster. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Somehow, spring security filter kicks > >> in > >>>>>> result > >>>>>>> in > >>>>>>>>>>>>>> some > >>>>>>>>>>>>>>>>>>>>>> weird > >>>>>>>>>>>>>>>>>>>>>>>>>> errors > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> web session filter. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> So making compatible with spring > >> security > >>>>>>> somehow, > >>>>>>>>>>>>>> we > >>>>>>>>>>>>>>>>>>>> need > >>>>>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>>>> write > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> implementation on spring session. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Do you have any test cases that says > >> web > >>>>>> session > >>>>>>>>>>>>>> filter > >>>>>>>>>>>>>>>>>>>>>> would > >>>>>>>>>>>>>>>>>>>>>>>>> work > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> spring security on boot platform ? > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Feb 14, 2017 at 1:03 PM, > >> Valentin > >>>>>>>>>>>>>> Kulichenko < > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> valentin.kuliche...@gmail.com > >>>>> <javascript:;>> > >>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Rishi, > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Can you please take a look at web > >>>> session > >>>>>>>>>>>>>> clustering > >>>>>>>>>>>>>>>>>>>>>> feature > >>>>>>>>>>>>>>>>>>>>>>>>> [1] > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> provided > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> by Ignite? I'm looking at Spring > >> Session > >>>>> docs > >>>>>>> and > >>>>>>>>>>>>>> it > >>>>>>>>>>>>>>>>>>>>> seems > >>>>>>>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>>>> me > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> it does > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> exactly the same - replaces > >> HttpSession > >>>>> with > >>>>>>>>>>>> custom > >>>>>>>>>>>>>>>>>>>>>>>>>> implementation > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> has > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> a backend storage. If it doesn't > >> provide > >>>>> any > >>>>>>>>>>>>>>>>>>>> additional > >>>>>>>>>>>>>>>>>>>>>> API > >>>>>>>>>>>>>>>>>>>>>>>> or > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> functionality, I'm not sure I > >> understand > >>>>> the > >>>>>>>>>>>>>> benefit > >>>>>>>>>>>>>>>>>>>> of > >>>>>>>>>>>>>>>>>>>>>> this > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> feature. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Let me know if I'm missing something. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [1] https://apacheignite-mix. > >>>>>>>>>>>>>>>>>>>>> readme.io/docs/web-session- > >>>>>>>>>>>>>>>>>>>>>>>>>> clustering > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -Val > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Mon, Feb 13, 2017 at 2:41 PM, Rishi > >>>>>> Yagnik < > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> rishiyag...@gmail.com <javascript:;>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I would like to discuss session > >>>>> replication > >>>>>> / > >>>>>>>>>>>> fail > >>>>>>>>>>>>>>>>>>>>> over > >>>>>>>>>>>>>>>>>>>>>>>>> design > >>>>>>>>>>>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> boot platform and wanted to find what > >>>> is > >>>>> the > >>>>>>>>>>>> best > >>>>>>>>>>>>>>>>>>>> out > >>>>>>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>>> get > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> started > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> here ? > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Possible approaches are as follows - > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - Make use of Spring Session for > >>>> session > >>>>>>>>>>>>>>>>>>>>> replication > >>>>>>>>>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>>>>>> fail > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> over > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - Extend the web session filter and > >>>> make > >>>>> it > >>>>>>>>>>>> work > >>>>>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> boot > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> application > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am thinking that best approach > >> would > >>>> be > >>>>> to > >>>>>>> get > >>>>>>>>>>>>>>>>>>>>> started > >>>>>>>>>>>>>>>>>>>>>>>> here > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> spring > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> session design however I am open for > >>>>>> feedback > >>>>>>>>>>>>>> here. > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> -- > >>>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> -- > >>>>>>>>>>>> Rishi Yagnik > >>>>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> Rishi Yagnik > >>>>>>>> > >>>>>>>> > >>>>>>> > >>>>>> > >>>>>> > >>>>>> > >>>>>> -- > >>>>>> Rishi Yagnik > >>>>>> > >>>>> > >>>> > >>> > >>> > >>> > >>> -- > >>> Rishi Yagnik > >>> > >> > >> > >> > >> -- > >> Rishi Yagnik > >> > -- Rishi Yagnik