temporalio/temporal · error
cannot specify ClientCAFiles and ClientCAData at the same ti
Error message
cannot specify ClientCAFiles and ClientCAData at the same time
What it means
Error "cannot specify ClientCAFiles and ClientCAData at the same time" thrown in temporalio/temporal.
Source
Thrown at common/rpc/encryption/tls_factory.go:131
}
return validateClientTLS(&cfg.Client)
}
func validateServerTLS(cfg *config.ServerTLS) error {
if cfg.CertFile != "" && cfg.CertData != "" {
return fmt.Errorf("cannot specify CertFile and CertData at the same time")
}
if cfg.KeyFile != "" && cfg.KeyData != "" {
return fmt.Errorf("cannot specify KeyFile and KeyData at the same time")
}
if err := validateCAs(cfg.ClientCAData); err != nil {
return fmt.Errorf("invalid ServerTLS.ClientCAData: %w", err)
}
if err := validateCAs(cfg.ClientCAFiles); err != nil {
return fmt.Errorf("invalid ServerTLS.ClientCAFiles: %w", err)
}
if len(cfg.ClientCAFiles) > 0 && len(cfg.ClientCAData) > 0 {
return fmt.Errorf("cannot specify ClientCAFiles and ClientCAData at the same time")
}
return nil
}
func validateClientTLS(cfg *config.ClientTLS) error {
if err := validateCAs(cfg.RootCAData); err != nil {
return fmt.Errorf("invalid ClientTLS.RootCAData: %w", err)
}
if err := validateCAs(cfg.RootCAFiles); err != nil {
return fmt.Errorf("invalid ClientTLS.RootCAFiles: %w", err)
}
if len(cfg.RootCAData) > 0 && len(cfg.RootCAFiles) > 0 {
return fmt.Errorf("cannot specify RootCAFiles and RootCAData at the same time")
}
return nil
}
func validateCAs(cas []string) error {View on GitHub (pinned to bde624efd1)
When it happens
Trigger: Thrown at common/rpc/encryption/tls_factory.go:131 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of temporalio/temporal@bde624efd1 (2026-09-01).
Data as JSON: /api/errors/af58a3e1741d5641.
Report an issue: GitHub.