starsz opened a new issue #1137:
URL: https://github.com/apache/apisix-dashboard/issues/1137


   # Feature request
   
   ## Please describe your feature
   
   Hello. Now we only try to get info from the cache in GenericStore.Get.
   You can see this:
   
   
https://github.com/apache/apisix-dashboard/blob/822aa6d1f40c5eb5bfef00030304eb5b619a9eea/api/internal/core/store/store.go#L139-L146
   
   It's not perfect.
   
   ## Describe the solution you'd like
   
   IMO, I think that we need to try `storage.Get` if it can't found in the 
cache. Because sometimes there is latency in etcd watch.
   Like this:
   
   ```
   func (s *GenericStore) Get(key string) (interface{}, error) { 
        ret, ok := s.cache.Load(key) 
        if !ok { 
                   // call s.Stg.Get
                log.Warnf("data not found by key: %s", key) 
                return nil, data.ErrNotFound 
        } 
        return ret, nil 
    } 
   ```
   
   
   ## Additional context
   
   Add I think this can fix: 
https://github.com/apache/apisix-dashboard/issues/922
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to