switch from golang-lru to the one in k8s.io/utils

Signed-off-by: Davanum Srinivas <davanum@gmail.com>

Kubernetes-commit: 79d0c6cdc10293c9bfe644ce31dc186a936579b0
This commit is contained in:
Davanum Srinivas 2021-07-07 13:45:07 -04:00 committed by Kubernetes Publisher
parent 2b00091dfb
commit fe1610f3fe
4 changed files with 9 additions and 26 deletions

View File

@ -21,14 +21,13 @@ import (
"fmt"
"time"
"github.com/hashicorp/golang-lru"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apiserver/pkg/storage/etcd3"
"k8s.io/client-go/kubernetes"
corev1listers "k8s.io/client-go/listers/core/v1"
"k8s.io/utils/lru"
)
// QuotaAccessor abstracts the get/set logic from the rest of the Evaluator. This could be a test stub, a straight passthrough,
@ -61,14 +60,8 @@ type quotaAccessor struct {
// newQuotaAccessor creates an object that conforms to the QuotaAccessor interface to be used to retrieve quota objects.
func newQuotaAccessor() (*quotaAccessor, error) {
liveLookupCache, err := lru.New(100)
if err != nil {
return nil, err
}
updatedCache, err := lru.New(100)
if err != nil {
return nil, err
}
liveLookupCache := lru.New(100)
updatedCache := lru.New(100)
// client and lister will be set when SetInternalKubeClientSet and SetInternalKubeInformerFactory are invoked
return &quotaAccessor{

View File

@ -24,10 +24,10 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
lru "github.com/hashicorp/golang-lru"
corev1 "k8s.io/api/core/v1"
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes/fake"
"k8s.io/utils/lru"
)
func TestLRUCacheLookup(t *testing.T) {
@ -86,10 +86,7 @@ func TestLRUCacheLookup(t *testing.T) {
for _, tc := range testcases {
t.Run(tc.description, func(t *testing.T) {
liveLookupCache, err := lru.New(1)
if err != nil {
t.Fatal(err)
}
liveLookupCache := lru.New(1)
kubeClient := fake.NewSimpleClientset(tc.clientInput...)
informerFactory := informers.NewSharedInformerFactory(kubeClient, 0)

View File

@ -26,8 +26,8 @@ import (
"time"
"k8s.io/apiserver/pkg/storage/value"
"k8s.io/utils/lru"
lru "github.com/hashicorp/golang-lru"
"golang.org/x/crypto/cryptobyte"
)
@ -64,14 +64,10 @@ type envelopeTransformer struct {
func NewEnvelopeTransformer(envelopeService Service, cacheSize int, baseTransformerFunc func(cipher.Block) value.Transformer) (value.Transformer, error) {
var (
cache *lru.Cache
err error
)
if cacheSize > 0 {
cache, err = lru.New(cacheSize)
if err != nil {
return nil, err
}
cache = lru.New(cacheSize)
}
return &envelopeTransformer{
envelopeService: envelopeService,

View File

@ -25,13 +25,13 @@ import (
"net/url"
"strconv"
"github.com/hashicorp/golang-lru"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/serializer"
utilerrors "k8s.io/apimachinery/pkg/util/errors"
"k8s.io/apiserver/pkg/util/x509metrics"
"k8s.io/client-go/rest"
"k8s.io/utils/lru"
)
const (
@ -65,10 +65,7 @@ type ClientManager struct {
// NewClientManager creates a clientManager.
func NewClientManager(gvs []schema.GroupVersion, addToSchemaFuncs ...func(s *runtime.Scheme) error) (ClientManager, error) {
cache, err := lru.New(defaultCacheSize)
if err != nil {
return ClientManager{}, err
}
cache := lru.New(defaultCacheSize)
hookScheme := runtime.NewScheme()
for _, addToSchemaFunc := range addToSchemaFuncs {
if err := addToSchemaFunc(hookScheme); err != nil {