VOL-2112 move to voltha-lib-go
Change-Id: I3435b8acb982deeab6b6ac28e798d7722ad01d0a
diff --git a/vendor/github.com/opencord/voltha-go/adapters/README.md b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/README.md
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/README.md
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/README.md
diff --git a/vendor/github.com/opencord/voltha-go/adapters/adapterif/adapter_proxy_if.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/adapter_proxy_if.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/adapterif/adapter_proxy_if.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/adapter_proxy_if.go
diff --git a/vendor/github.com/opencord/voltha-go/adapters/adapterif/core_proxy_if.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/core_proxy_if.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/adapterif/core_proxy_if.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/core_proxy_if.go
diff --git a/vendor/github.com/opencord/voltha-go/adapters/adapterif/events_proxy_if.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/events_proxy_if.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/adapterif/events_proxy_if.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/adapterif/events_proxy_if.go
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/adapter_proxy.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/adapter_proxy.go
similarity index 96%
rename from vendor/github.com/opencord/voltha-go/adapters/common/adapter_proxy.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/adapter_proxy.go
index 6c32422..fee70c8 100644
--- a/vendor/github.com/opencord/voltha-go/adapters/common/adapter_proxy.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/adapter_proxy.go
@@ -21,8 +21,8 @@
"github.com/golang/protobuf/ptypes"
"github.com/golang/protobuf/ptypes/any"
"github.com/google/uuid"
- "github.com/opencord/voltha-go/common/log"
- "github.com/opencord/voltha-go/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/log"
ic "github.com/opencord/voltha-protos/go/inter_container"
"time"
)
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/core_proxy.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/core_proxy.go
similarity index 99%
rename from vendor/github.com/opencord/voltha-go/adapters/common/core_proxy.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/core_proxy.go
index c9f332c..30117ca 100644
--- a/vendor/github.com/opencord/voltha-go/adapters/common/core_proxy.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/core_proxy.go
@@ -19,8 +19,8 @@
"context"
"github.com/golang/protobuf/ptypes"
a "github.com/golang/protobuf/ptypes/any"
- "github.com/opencord/voltha-go/common/log"
- "github.com/opencord/voltha-go/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/log"
ic "github.com/opencord/voltha-protos/go/inter_container"
"github.com/opencord/voltha-protos/go/voltha"
"google.golang.org/grpc/codes"
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/events_proxy.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/events_proxy.go
similarity index 95%
rename from vendor/github.com/opencord/voltha-go/adapters/common/events_proxy.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/events_proxy.go
index 34fcde7..25b1be4 100644
--- a/vendor/github.com/opencord/voltha-go/adapters/common/events_proxy.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/events_proxy.go
@@ -23,9 +23,9 @@
"strings"
"time"
- "github.com/opencord/voltha-go/adapters/adapterif"
- "github.com/opencord/voltha-go/common/log"
- "github.com/opencord/voltha-go/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/adapters/adapterif"
+ "github.com/opencord/voltha-lib-go/pkg/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/log"
"github.com/opencord/voltha-protos/go/voltha"
)
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/performance_metrics.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/performance_metrics.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/common/performance_metrics.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/performance_metrics.go
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/request_handler.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/request_handler.go
similarity index 98%
rename from vendor/github.com/opencord/voltha-go/adapters/common/request_handler.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/request_handler.go
index 55e04d7..27f9846 100644
--- a/vendor/github.com/opencord/voltha-go/adapters/common/request_handler.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/request_handler.go
@@ -19,10 +19,10 @@
"errors"
"github.com/golang/protobuf/ptypes"
"github.com/golang/protobuf/ptypes/empty"
- "github.com/opencord/voltha-go/adapters"
- "github.com/opencord/voltha-go/adapters/adapterif"
- "github.com/opencord/voltha-go/common/log"
- "github.com/opencord/voltha-go/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/adapters"
+ "github.com/opencord/voltha-lib-go/pkg/adapters/adapterif"
+ "github.com/opencord/voltha-lib-go/pkg/kafka"
+ "github.com/opencord/voltha-lib-go/pkg/log"
ic "github.com/opencord/voltha-protos/go/inter_container"
"github.com/opencord/voltha-protos/go/openflow_13"
"github.com/opencord/voltha-protos/go/voltha"
diff --git a/vendor/github.com/opencord/voltha-go/adapters/common/utils.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/utils.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/common/utils.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/common/utils.go
diff --git a/vendor/github.com/opencord/voltha-go/adapters/iAdapter.go b/vendor/github.com/opencord/voltha-lib-go/pkg/adapters/iAdapter.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/adapters/iAdapter.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/adapters/iAdapter.go
diff --git a/vendor/github.com/opencord/voltha-go/db/kvstore/client.go b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/client.go
similarity index 98%
rename from vendor/github.com/opencord/voltha-go/db/kvstore/client.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/client.go
index 67c9219..f40d10e 100644
--- a/vendor/github.com/opencord/voltha-go/db/kvstore/client.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/client.go
@@ -16,7 +16,7 @@
package kvstore
import (
- "github.com/opencord/voltha-go/common/log"
+ "github.com/opencord/voltha-lib-go/pkg/log"
)
const (
diff --git a/vendor/github.com/opencord/voltha-go/db/kvstore/consulclient.go b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/consulclient.go
similarity index 99%
rename from vendor/github.com/opencord/voltha-go/db/kvstore/consulclient.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/consulclient.go
index c4fa0af..c3e3999 100644
--- a/vendor/github.com/opencord/voltha-go/db/kvstore/consulclient.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/consulclient.go
@@ -19,7 +19,7 @@
"bytes"
"context"
"errors"
- log "github.com/opencord/voltha-go/common/log"
+ log "github.com/opencord/voltha-lib-go/pkg/log"
"sync"
"time"
//log "ciena.com/coordinator/common"
diff --git a/vendor/github.com/opencord/voltha-go/db/kvstore/etcdclient.go b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/etcdclient.go
similarity index 96%
rename from vendor/github.com/opencord/voltha-go/db/kvstore/etcdclient.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/etcdclient.go
index 88c13ae..beac4e0 100644
--- a/vendor/github.com/opencord/voltha-go/db/kvstore/etcdclient.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/etcdclient.go
@@ -19,7 +19,7 @@
"context"
"errors"
"fmt"
- "github.com/opencord/voltha-go/common/log"
+ "github.com/opencord/voltha-lib-go/pkg/log"
v3Client "go.etcd.io/etcd/clientv3"
v3Concurrency "go.etcd.io/etcd/clientv3/concurrency"
v3rpcTypes "go.etcd.io/etcd/etcdserver/api/v3rpc/rpctypes"
@@ -127,7 +127,15 @@
c.writeLock.Lock()
defer c.writeLock.Unlock()
- _, err := c.ectdAPI.Put(ctx, key, val)
+
+ var err error
+ // Check if there is already a lease for this key - if there is then use it, otherwise a PUT will make
+ // that KV key permanent instead of automatically removing it after a lease expiration
+ if leaseID, ok := c.keyReservations[key]; ok {
+ _, err = c.ectdAPI.Put(ctx, key, val, v3Client.WithLease(*leaseID))
+ } else {
+ _, err = c.ectdAPI.Put(ctx, key, val)
+ }
cancel()
if err != nil {
switch err {
@@ -158,8 +166,8 @@
c.writeLock.Lock()
defer c.writeLock.Unlock()
- // delete the keys
- if _, err := c.ectdAPI.Delete(ctx, key, v3Client.WithPrefix()); err != nil {
+ // delete the key
+ if _, err := c.ectdAPI.Delete(ctx, key); err != nil {
log.Errorw("failed-to-delete-key", log.Fields{"key": key, "error": err})
return err
}
@@ -309,7 +317,7 @@
func (c *EtcdClient) Watch(key string) chan *Event {
w := v3Client.NewWatcher(c.ectdAPI)
ctx, cancel := context.WithCancel(context.Background())
- channel := w.Watch(ctx, key, v3Client.WithPrefix())
+ channel := w.Watch(ctx, key)
// Create a new channel
ch := make(chan *Event, maxClientChannelBufferSize)
@@ -317,8 +325,6 @@
// Keep track of the created channels so they can be closed when required
channelMap := make(map[chan *Event]v3Client.Watcher)
channelMap[ch] = w
- //c.writeLock.Lock()
- //defer c.writeLock.Unlock()
channelMaps := c.addChannelMap(key, channelMap)
@@ -412,7 +418,6 @@
defer close(ch)
for resp := range channel {
for _, ev := range resp.Events {
- //log.Debugf("%s %q : %q\n", ev.Type, ev.Kv.Key, ev.Kv.Value)
ch <- NewEvent(getEventType(ev), ev.Kv.Key, ev.Kv.Value, ev.Kv.Version)
}
}
diff --git a/vendor/github.com/opencord/voltha-go/db/kvstore/kvutils.go b/vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/kvutils.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/db/kvstore/kvutils.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/db/kvstore/kvutils.go
diff --git a/vendor/github.com/opencord/voltha-go/kafka/client.go b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/client.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/kafka/client.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/kafka/client.go
diff --git a/vendor/github.com/opencord/voltha-go/kafka/kafka_inter_container_library.go b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/kafka_inter_container_library.go
similarity index 97%
rename from vendor/github.com/opencord/voltha-go/kafka/kafka_inter_container_library.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/kafka/kafka_inter_container_library.go
index 56b5fa1..d2e0702 100644
--- a/vendor/github.com/opencord/voltha-go/kafka/kafka_inter_container_library.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/kafka_inter_container_library.go
@@ -23,7 +23,7 @@
"github.com/golang/protobuf/ptypes"
"github.com/golang/protobuf/ptypes/any"
"github.com/google/uuid"
- "github.com/opencord/voltha-go/common/log"
+ "github.com/opencord/voltha-lib-go/pkg/log"
ic "github.com/opencord/voltha-protos/go/inter_container"
"reflect"
"strings"
@@ -46,6 +46,9 @@
FromTopic = "fromTopic"
)
+var ErrorTransactionNotAcquired = errors.New("transaction-not-acquired")
+var ErrorTransactionInvalidId = errors.New("transaction-invalid-id")
+
// requestHandlerChannel represents an interface associated with a channel. Whenever, an event is
// obtained from that channel, this interface is invoked. This is used to handle
// async requests into the Core via the kafka messaging bus
@@ -674,15 +677,20 @@
// Check for errors first
lastIndex := len(out) - 1
if out[lastIndex].Interface() != nil { // Error
- if goError, ok := out[lastIndex].Interface().(error); ok {
- returnError = &ic.Error{Reason: goError.Error()}
+ if retError, ok := out[lastIndex].Interface().(error); ok {
+ if retError.Error() == ErrorTransactionNotAcquired.Error() {
+ log.Debugw("Ignoring request", log.Fields{"error": retError, "txId": msg.Header.Id})
+ return // Ignore - process is in competing mode and ignored transaction
+ }
+ returnError = &ic.Error{Reason: retError.Error()}
returnedValues = append(returnedValues, returnError)
} else { // Should never happen
returnError = &ic.Error{Reason: "incorrect-error-returns"}
returnedValues = append(returnedValues, returnError)
}
} else if len(out) == 2 && reflect.ValueOf(out[0].Interface()).IsValid() && reflect.ValueOf(out[0].Interface()).IsNil() {
- return // Ignore case - when core is in competing mode
+ log.Warnw("Unexpected response of (nil,nil)", log.Fields{"txId": msg.Header.Id})
+ return // Ignore - should not happen
} else { // Non-error case
success = true
for idx, val := range out {
diff --git a/vendor/github.com/opencord/voltha-go/kafka/sarama_client.go b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/sarama_client.go
similarity index 99%
rename from vendor/github.com/opencord/voltha-go/kafka/sarama_client.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/kafka/sarama_client.go
index 9e3ce0c..cec18ec 100644
--- a/vendor/github.com/opencord/voltha-go/kafka/sarama_client.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/sarama_client.go
@@ -22,7 +22,7 @@
scc "github.com/bsm/sarama-cluster"
"github.com/golang/protobuf/proto"
"github.com/google/uuid"
- "github.com/opencord/voltha-go/common/log"
+ "github.com/opencord/voltha-lib-go/pkg/log"
ic "github.com/opencord/voltha-protos/go/inter_container"
"strings"
"sync"
diff --git a/vendor/github.com/opencord/voltha-go/kafka/utils.go b/vendor/github.com/opencord/voltha-lib-go/pkg/kafka/utils.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/kafka/utils.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/kafka/utils.go
diff --git a/vendor/github.com/opencord/voltha-go/common/log/log.go b/vendor/github.com/opencord/voltha-lib-go/pkg/log/log.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/common/log/log.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/log/log.go
diff --git a/vendor/github.com/opencord/voltha-go/common/probe/probe.go b/vendor/github.com/opencord/voltha-lib-go/pkg/probe/probe.go
similarity index 99%
rename from vendor/github.com/opencord/voltha-go/common/probe/probe.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/probe/probe.go
index 8a8e485..192c7ca 100644
--- a/vendor/github.com/opencord/voltha-go/common/probe/probe.go
+++ b/vendor/github.com/opencord/voltha-lib-go/pkg/probe/probe.go
@@ -18,7 +18,7 @@
import (
"context"
"fmt"
- "github.com/opencord/voltha-go/common/log"
+ "github.com/opencord/voltha-lib-go/pkg/log"
"net/http"
"sync"
)
diff --git a/vendor/github.com/opencord/voltha-go/common/version/version.go b/vendor/github.com/opencord/voltha-lib-go/pkg/version/version.go
similarity index 100%
rename from vendor/github.com/opencord/voltha-go/common/version/version.go
rename to vendor/github.com/opencord/voltha-lib-go/pkg/version/version.go