Hi,
On Fri, Mar 21, 2014 at 2:35 PM, Udara Liyanage <[email protected]> wrote: > Hi, > > The issue [1] is a blocker for the current release in progress. When LB is > fronting some members (in my case PHP) after some time I get the error > mentioned in [1] and stop working. Thereafter members can not be accessed > via LB. The message "Error occured when execute the class endpoint" is > desplayed in the browser. > > When I further did into the issue with I found that this occurs when LB is > search for the next member to be send the request. The next member value is > stored in the cache. So I guess that when the cache is invalidated, the > value is not there which results in the NullPointerException. > > IMO cache is not needed to store the index value. There is no place to get > the current index when the cache is invalidated. Is it Ok to remove cache > for current index? > Yes. I also think the cache is not a good place to store an index in this scenario. Since there are cache eviction policies, there is always a possibility of returning a null when accessing the cache. The code may have used a distributed map, where the values won't be evicted It seems that many of the load balancer codes were re-written and I felt that most of the code was duplicated from existing load balancer we had in Stratos 3.0.0. I didn't dig for reasons, but at a quick glance I noticed that there are duplicated codes and we could have reused the stuff we had. > > [1] https://issues.apache.org/jira/browse/STRATOS-481 > > -- > > Udara Liyanage > Software Engineer > WSO2, Inc.: http://wso2.com > lean. enterprise. middleware > > web: http://udaraliyanage.wordpress.com > phone: +94 71 443 6897 > -- Isuru Perera Senior Software Engineer | WSO2, Inc. | http://wso2.com/ Lean . Enterprise . Middleware about.me/chrishantha
