From d7c1dc038d68dac30b4aff5695265329076d9ec3 Mon Sep 17 00:00:00 2001 From: Paul Lorenz Date: Wed, 14 Jul 2021 17:32:28 -0400 Subject: [PATCH] Allow searching on role sets --- .../persistence/edge_router_policy_store.go | 4 ++-- controller/persistence/edge_router_store.go | 2 +- controller/persistence/edge_service_store.go | 2 +- controller/persistence/identity_store.go | 2 +- .../service_edge_router_policy_store.go | 4 ++-- .../persistence/service_policy_store.go | 6 +++--- go.mod | 2 +- go.sum | 5 ++--- router/xgress_edge/fabric.go | 1 - router/xgress_edge/listener.go | 20 ------------------- 10 files changed, 13 insertions(+), 35 deletions(-) diff --git a/controller/persistence/edge_router_policy_store.go b/controller/persistence/edge_router_policy_store.go index ffd771be1..17b3771d3 100644 --- a/controller/persistence/edge_router_policy_store.go +++ b/controller/persistence/edge_router_policy_store.go @@ -125,8 +125,8 @@ func (store *edgeRouterPolicyStoreImpl) initializeLocal() { store.indexName = store.addUniqueNameField() store.symbolSemantic = store.AddSymbol(FieldSemantic, ast.NodeTypeString) - store.symbolIdentityRoles = store.AddSetSymbol(FieldIdentityRoles, ast.NodeTypeString) - store.symbolEdgeRouterRoles = store.AddSetSymbol(FieldEdgeRouterRoles, ast.NodeTypeString) + store.symbolIdentityRoles = store.AddPublicSetSymbol(FieldIdentityRoles, ast.NodeTypeString) + store.symbolEdgeRouterRoles = store.AddPublicSetSymbol(FieldEdgeRouterRoles, ast.NodeTypeString) store.symbolIdentities = store.AddFkSetSymbol(EntityTypeIdentities, store.stores.identity) store.symbolEdgeRouters = store.AddFkSetSymbol(db.EntityTypeRouters, store.stores.edgeRouter) diff --git a/controller/persistence/edge_router_store.go b/controller/persistence/edge_router_store.go index 7b5c616c6..6f3cae330 100644 --- a/controller/persistence/edge_router_store.go +++ b/controller/persistence/edge_router_store.go @@ -144,7 +144,7 @@ func (store *edgeRouterStoreImpl) GetRoleAttributesIndex() boltz.SetReadIndex { func (store *edgeRouterStoreImpl) initializeLocal() { store.GetParentStore().GrantSymbols(store) - store.symbolRoleAttributes = store.AddSetSymbol(FieldRoleAttributes, ast.NodeTypeString) + store.symbolRoleAttributes = store.AddPublicSetSymbol(FieldRoleAttributes, ast.NodeTypeString) store.indexName = store.GetParentStore().(db.RouterStore).GetNameIndex() store.indexRoleAttributes = store.AddSetIndex(store.symbolRoleAttributes) diff --git a/controller/persistence/edge_service_store.go b/controller/persistence/edge_service_store.go index 4c028f89e..3bd5d9da3 100644 --- a/controller/persistence/edge_service_store.go +++ b/controller/persistence/edge_service_store.go @@ -132,7 +132,7 @@ func (store *edgeServiceStoreImpl) GetRoleAttributesIndex() boltz.SetReadIndex { func (store *edgeServiceStoreImpl) initializeLocal() { store.GetParentStore().GrantSymbols(store) - store.symbolRoleAttributes = store.AddSetSymbol(FieldRoleAttributes, ast.NodeTypeString) + store.symbolRoleAttributes = store.AddPublicSetSymbol(FieldRoleAttributes, ast.NodeTypeString) store.indexName = store.GetParentStore().(db.ServiceStore).GetNameIndex() store.indexRoleAttributes = store.AddSetIndex(store.symbolRoleAttributes) diff --git a/controller/persistence/identity_store.go b/controller/persistence/identity_store.go index 7b2689ed9..f603a717a 100644 --- a/controller/persistence/identity_store.go +++ b/controller/persistence/identity_store.go @@ -281,7 +281,7 @@ func (store *identityStoreImpl) GetRoleAttributesIndex() boltz.SetReadIndex { func (store *identityStoreImpl) initializeLocal() { store.AddExtEntitySymbols() - store.symbolRoleAttributes = store.AddSetSymbol(FieldRoleAttributes, ast.NodeTypeString) + store.symbolRoleAttributes = store.AddPublicSetSymbol(FieldRoleAttributes, ast.NodeTypeString) store.indexRoleAttributes = store.AddSetIndex(store.symbolRoleAttributes) store.indexName = store.addUniqueNameField() diff --git a/controller/persistence/service_edge_router_policy_store.go b/controller/persistence/service_edge_router_policy_store.go index 388faf193..2377e2e38 100644 --- a/controller/persistence/service_edge_router_policy_store.go +++ b/controller/persistence/service_edge_router_policy_store.go @@ -125,8 +125,8 @@ func (store *serviceEdgeRouterPolicyStoreImpl) initializeLocal() { store.indexName = store.addUniqueNameField() store.symbolSemantic = store.AddSymbol(FieldSemantic, ast.NodeTypeString) - store.symbolServiceRoles = store.AddSetSymbol(FieldServiceRoles, ast.NodeTypeString) - store.symbolEdgeRouterRoles = store.AddSetSymbol(FieldEdgeRouterRoles, ast.NodeTypeString) + store.symbolServiceRoles = store.AddPublicSetSymbol(FieldServiceRoles, ast.NodeTypeString) + store.symbolEdgeRouterRoles = store.AddPublicSetSymbol(FieldEdgeRouterRoles, ast.NodeTypeString) store.symbolServices = store.AddFkSetSymbol(db.EntityTypeServices, store.stores.edgeService) store.symbolEdgeRouters = store.AddFkSetSymbol(db.EntityTypeRouters, store.stores.edgeRouter) } diff --git a/controller/persistence/service_policy_store.go b/controller/persistence/service_policy_store.go index 40789b538..9d1017773 100644 --- a/controller/persistence/service_policy_store.go +++ b/controller/persistence/service_policy_store.go @@ -195,9 +195,9 @@ func (store *servicePolicyStoreImpl) initializeLocal() { store.symbolPolicyType = store.AddSymbol(FieldServicePolicyType, ast.NodeTypeInt64) store.symbolSemantic = store.AddSymbol(FieldSemantic, ast.NodeTypeString) - store.symbolIdentityRoles = store.AddSetSymbol(FieldIdentityRoles, ast.NodeTypeString) - store.symbolServiceRoles = store.AddSetSymbol(FieldServiceRoles, ast.NodeTypeString) - store.symbolPostureCheckRoles = store.AddSetSymbol(FieldPostureCheckRoles, ast.NodeTypeString) + store.symbolIdentityRoles = store.AddPublicSetSymbol(FieldIdentityRoles, ast.NodeTypeString) + store.symbolServiceRoles = store.AddPublicSetSymbol(FieldServiceRoles, ast.NodeTypeString) + store.symbolPostureCheckRoles = store.AddPublicSetSymbol(FieldPostureCheckRoles, ast.NodeTypeString) store.symbolIdentities = store.AddFkSetSymbol(EntityTypeIdentities, store.stores.identity) store.symbolServices = store.AddFkSetSymbol(db.EntityTypeServices, store.stores.edgeService) diff --git a/go.mod b/go.mod index 8920e6c29..8487ee6df 100644 --- a/go.mod +++ b/go.mod @@ -40,7 +40,7 @@ require ( github.com/miekg/dns v1.1.43 github.com/mitchellh/mapstructure v1.4.1 github.com/netfoundry/secretstream v0.1.2 - github.com/openziti/fabric v0.16.74 + github.com/openziti/fabric v0.16.75 github.com/openziti/foundation v0.15.60 github.com/openziti/sdk-golang v0.15.65 github.com/orcaman/concurrent-map v0.0.0-20210106121528-16402b402231 diff --git a/go.sum b/go.sum index a94aaeeac..9baa5b636 100644 --- a/go.sum +++ b/go.sum @@ -574,9 +574,8 @@ github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTm github.com/openziti/bbolt v1.3.6-0.20210317142109-547da822475e h1:ST9+54UtCr96S5+Wa7LQtpGS6/xK7Z+KQXvOAtYgJlA= github.com/openziti/bbolt v1.3.6-0.20210317142109-547da822475e/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= github.com/openziti/dilithium v0.3.3/go.mod h1:vsCjI2AU/hon9e+dLhUFbCNGesJDj2ASgkySOcpmvjo= -github.com/openziti/fabric v0.16.74 h1:1VWufwWJA7Nmyprgfi2Ktz5d5RhxXM4NafPd+6cBnHA= -github.com/openziti/fabric v0.16.74/go.mod h1:TXv9saO+9p2QCHjT12Va1HLMTfWPDpMYs9eE8BRqVUA= -github.com/openziti/foundation v0.15.59/go.mod h1:T6AFkhKlyuH+zsM5AChqoxl45cBswx70mw288eVy4lY= +github.com/openziti/fabric v0.16.75 h1:v3qgM/APGBqAMwk5Y7+Xv18iqlAVtIoOjWH6eAxAN2A= +github.com/openziti/fabric v0.16.75/go.mod h1:/YJY1j2RTx2gMBL7oQG06BQk5eD8QfN0SimbKjFKvRI= github.com/openziti/foundation v0.15.60 h1:RkVyq0H0w+G2mA5+20xoodULNwn67QQPYDPzyMqpf6M= github.com/openziti/foundation v0.15.60/go.mod h1:T6AFkhKlyuH+zsM5AChqoxl45cBswx70mw288eVy4lY= github.com/openziti/sdk-golang v0.15.65 h1:GleTldLmKrafDX36hZNIqP+VORUiHx+HUZgKWtgKN4o= diff --git a/router/xgress_edge/fabric.go b/router/xgress_edge/fabric.go index 20d32a44e..007dc57c1 100644 --- a/router/xgress_edge/fabric.go +++ b/router/xgress_edge/fabric.go @@ -210,7 +210,6 @@ func (self *edgeXgressConn) close(notify bool, reason string) { if self.onClose != nil { self.onClose() - } } diff --git a/router/xgress_edge/listener.go b/router/xgress_edge/listener.go index cb9af79a6..2d642843c 100644 --- a/router/xgress_edge/listener.go +++ b/router/xgress_edge/listener.go @@ -409,26 +409,6 @@ func (self *edgeClientConn) sendStateClosedReply(message string, req *channel2.M } } -func (self *edgeClientConn) sendStateClosed(connId uint32, message string) { - msg := edge.NewStateClosedMsg(connId, message) - pfxlog.Logger().WithFields(edge.GetLoggerFields(msg)).Debug("sending state closed message") - - syncC, err := self.ch.SendAndSyncWithPriority(msg, channel2.High) - if err != nil { - pfxlog.Logger().WithFields(edge.GetLoggerFields(msg)).WithError(err).Error("failed to send state response") - return - } - - select { - case err = <-syncC: - if err != nil { - pfxlog.Logger().WithFields(edge.GetLoggerFields(msg)).WithError(err).Error("failed to send state response") - } - case <-time.After(time.Second * 5): - pfxlog.Logger().WithFields(edge.GetLoggerFields(msg)).WithError(err).Error("timed out sending state response") - } -} - func getResultOrFailure(msg *channel2.Message, err error, result channel2.TypedMessage) error { if err != nil { return err