temporalio/temporal
Namespace
A namespace is the administrative isolation boundary for everything in a Temporal cluster: workflows, schedules, search attributes, archival, replication.
| Aspect | Detail |
|---|---|
| Identity | Unique name + opaque NamespaceID (UUID). |
| Settings | Retention period, archival URI, active cluster, replication targets, search-attribute mapping. |
| Persistence | One row in namespaces (and namespace_metadata); see common/persistence/metadata_manager.go. |
| Cache | Per-process namespace cache: common/namespace/registry.go. |
| Frontend handlers | service/frontend/namespace_handler.go. |
| Async deletion | service/worker/deletenamespace/. |
Lookup path
Almost every gRPC handler resolves a namespace name → ID early in its processing. The namespace cache is read on every call; cache misses go to the metadata manager. The cache refreshes via long-polling against the metadata table so updates from any cluster propagate within seconds.
Replication
A namespace's ActiveClusterName and ReplicationConfig together determine multi-cluster behaviour. Updates to those fields are themselves replicated.
Where to read more
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.