( ctx context.Context, cfg *config.Persistence, currentClusterName string, persistenceServiceResolver resolver.ServiceResolver, persistenceFactoryProvider persistenceClient.FactoryProviderFn, logger log.Logger, customDataStoreFactory persistenceClient.AbstractDataStoreFactory, metricsHandler metrics.Handler, serializer serialization.Serializer, )
| 146 | } |
| 147 | |
| 148 | func initSystemNamespaces( |
| 149 | ctx context.Context, |
| 150 | cfg *config.Persistence, |
| 151 | currentClusterName string, |
| 152 | persistenceServiceResolver resolver.ServiceResolver, |
| 153 | persistenceFactoryProvider persistenceClient.FactoryProviderFn, |
| 154 | logger log.Logger, |
| 155 | customDataStoreFactory persistenceClient.AbstractDataStoreFactory, |
| 156 | metricsHandler metrics.Handler, |
| 157 | serializer serialization.Serializer, |
| 158 | ) error { |
| 159 | clusterName := persistenceClient.ClusterName(currentClusterName) |
| 160 | metricsHandler = metricsHandler.WithTags(metrics.ServiceNameTag(primitives.ServerService)) |
| 161 | dataStoreFactory := persistenceClient.DataStoreFactoryProvider( |
| 162 | clusterName, |
| 163 | persistenceServiceResolver, |
| 164 | cfg, |
| 165 | customDataStoreFactory, |
| 166 | logger, |
| 167 | metricsHandler, |
| 168 | telemetry.NoopTracerProvider, |
| 169 | serializer, |
| 170 | ) |
| 171 | factory := persistenceFactoryProvider(persistenceClient.NewFactoryParams{ |
| 172 | DataStoreFactory: dataStoreFactory, |
| 173 | Cfg: cfg, |
| 174 | PersistenceMaxQPS: nil, |
| 175 | PersistenceNamespaceMaxQPS: nil, |
| 176 | ClusterName: persistenceClient.ClusterName(currentClusterName), |
| 177 | MetricsHandler: metricsHandler, |
| 178 | Logger: logger, |
| 179 | Serializer: serializer, |
| 180 | }) |
| 181 | defer factory.Close() |
| 182 | |
| 183 | metadataManager, err := factory.NewMetadataManager() |
| 184 | if err != nil { |
| 185 | return fmt.Errorf("unable to initialize metadata manager: %w", err) |
| 186 | } |
| 187 | defer metadataManager.Close() |
| 188 | ctx, cancel := context.WithTimeout( |
| 189 | headers.SetCallerInfo(ctx, headers.SystemBackgroundHighCallerInfo), |
| 190 | 30*time.Second, |
| 191 | ) |
| 192 | defer cancel() |
| 193 | |
| 194 | if err = metadataManager.InitializeSystemNamespaces(ctx, currentClusterName); err != nil { |
| 195 | return fmt.Errorf("unable to register system namespace: %w", err) |
| 196 | } |
| 197 | return nil |
| 198 | } |
no test coverage detected