{"record":{"id":"86cf714924c68f5d","repo":"gofr-dev/gofr","slug":"jstream-creation-failed","errorCode":null,"errorMessage":"jStream creation failed","messagePattern":"jStream creation failed","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/gofr/datasource/pubsub/nats/errors.go","lineNumber":14,"sourceCode":"package nats\n\nimport \"errors\"\n\nvar (\n\t// Client Errors.\n\terrServerNotProvided       = errors.New(\"client server address not provided\")\n\terrSubjectsNotProvided     = errors.New(\"subjects not provided\")\n\terrConsumerNotProvided     = errors.New(\"consumer name not provided\")\n\terrConsumerCreationError   = errors.New(\"consumer creation error\")\n\terrFailedToDeleteStream    = errors.New(\"failed to delete stream\")\n\terrPublishError            = errors.New(\"publish error\")\n\terrJetStreamNotConfigured  = errors.New(\"jStream is not configured\")\n\terrJetStreamCreationFailed = errors.New(\"jStream creation failed\")\n\terrJetStream               = errors.New(\"jStream error\")\n\terrCreateStream            = errors.New(\"create stream error\")\n\terrDeleteStream            = errors.New(\"delete stream error\")\n\terrGetStream               = errors.New(\"get stream error\")\n\terrCreateOrUpdateStream    = errors.New(\"create or update stream error\")\n\terrHandlerError            = errors.New(\"handler error\")\n\terrConnectionError         = errors.New(\"connection error\")\n\terrSubscriptionError       = errors.New(\"subscription error\")\n)\n","sourceCodeStart":1,"sourceCodeEnd":24,"githubUrl":"https://github.com/gofr-dev/gofr/blob/187eb24962502e91f1fee856230670958b66e89c/pkg/gofr/datasource/pubsub/nats/errors.go#L1-L24","documentation":"errJetStreamCreationFailed (errors.go:14) is returned when the JetStreamCreator's New(conn) call — typically ConnInterface.JetStream() — fails while establishing the client. This means a connection to NATS exists but the JetStream context could not be obtained. It is surfaced during DefaultJetStreamCreator.New and connection-manager setup.","triggerScenarios":"Calling nats.Conn.JetStream() on the established connection returns an error — JetStream disabled on the server, or the client library version rejects the JetStream setup request.","commonSituations":"NATS server started without JetStream enabled (missing -js or jetstream{} config); incompatible nats.go client vs server version; restricted account without JetStream permissions.","solutions":["Enable JetStream on the NATS server (start with `-js` or add `jetstream { store_dir ... }` to the config).","Check the account/user has JetStream permissions (no JetStream deny in the account claims).","Align the nats.go / jetstream client library version with the server version (nats-server --version vs go.mod).","Retry after server restart — transient states during server startup can reject JetStream creation."],"exampleFix":"// before: nats-server.conf without JetStream\n// (no jetstream block)\n// after: nats-server.conf\n// jetstream {\n//   store_dir: \"/data/nats\"\n// }","handlingStrategy":"fallback","validationCode":"// probe JetStream support before wiring the datasource\nif _, err := conn.JetStream(); err != nil {\n    return fmt.Errorf(\"server has no JetStream enabled: %w\", err)\n}","typeGuard":null,"tryCatchPattern":"if err := connManager.Connect(); err != nil {\n    if strings.Contains(err.Error(), \"jStream creation failed\") {\n        logger.Fatalf(\"enable JetStream on the NATS server (-js) and restart: %v\", err)\n    }\n    return err\n}","preventionTips":["Start nats-server with JetStream enabled (-js or jetstream{} block) in every environment.","Keep nats.go client version compatible with the nats-server version.","Grant the account/user JetStream permissions.","Add a smoke test that creates JetStream context in CI against a real server."],"tags":["nats","jetstream","server-config","gofr"],"backgroundTag":"jetstream-not-enabled","analyzedSha":"187eb24962502e91f1fee856230670958b66e89c","analyzedAt":"2026-09-01T20:34:54.554Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}