public sealed class ExecutionConfig : IMessage<ExecutionConfig>, IEquatable<ExecutionConfig>, IDeepCloneable<ExecutionConfig>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Dataproc v1 API class ExecutionConfig.
public AuthenticationConfig AuthenticationConfig { get; set; }
Optional. Authentication configuration used to set the default identity for
the workload execution. The config specifies the type of identity
(service account or user) that will be used by workloads to access
resources on the project(s).
Optional. Applies to sessions only. The duration to keep the session alive
while it's idling. Exceeding this threshold causes the session to
terminate. This field cannot be set on a batch workload. Minimum value is
10 minutes; maximum value is 14 days (see JSON representation of
Duration).
Defaults to 1 hour if not set.
If both ttl and idle_ttl are specified for an interactive session,
the conditions are treated as OR conditions: the workload will be
terminated when it has been idle for idle_ttl or when ttl has been
exceeded, whichever occurs first.
Optional. A Cloud Storage bucket used to stage workload dependencies,
config files, and store workload output and other ephemeral data, such as
Spark history files. If you do not specify a staging bucket, Cloud Dataproc
will determine a Cloud Storage location according to the region where your
workload is running, and then create and manage project-level, per-location
staging and temporary buckets.
This field requires a Cloud Storage bucket name, not a gs://... URI to
a Cloud Storage bucket.
Optional. The duration after which the workload will be terminated,
specified as the JSON representation for
Duration.
When the workload exceeds this duration, it will be unconditionally
terminated without waiting for ongoing work to finish. If ttl is not
specified for a batch workload, the workload will be allowed to run until
it exits naturally (or run forever without exiting). If ttl is not
specified for an interactive session, it defaults to 24 hours. If ttl is
not specified for a batch that uses 2.1+ runtime version, it defaults to 4
hours. Minimum value is 10 minutes; maximum value is 14 days. If both ttl
and idle_ttl are specified (for an interactive session), the conditions
are treated as OR conditions: the workload will be terminated when it has
been idle for idle_ttl or when ttl has been exceeded, whichever occurs
first.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the \u003ccode\u003eExecutionConfig\u003c/code\u003e class within the Google Cloud Dataproc v1 API, detailing its structure and functionality for workload execution configuration.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of the \u003ccode\u003eExecutionConfig\u003c/code\u003e documentation is 5.17.0, and links to prior versions dating back to 3.1.0 are available for reference.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eExecutionConfig\u003c/code\u003e includes properties for managing authentication, network settings, idle and total time-to-live (TTL), Cloud KMS key for encryption, staging bucket, and service account.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eExecutionConfig\u003c/code\u003e class implements several interfaces such as \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, providing functionalities like message handling, equality checks, deep cloning, and buffer message handling.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation specifies that both \u003ccode\u003ettl\u003c/code\u003e and \u003ccode\u003eidle_ttl\u003c/code\u003e in an interactive session are treated as \u003ccode\u003eOR\u003c/code\u003e conditions for termination.\u003c/p\u003e\n"]]],[],null,["# Google Cloud Dataproc v1 API - Class ExecutionConfig (5.20.0)\n\nVersion latestkeyboard_arrow_down\n\n- [5.20.0 (latest)](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/latest/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.19.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.19.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.18.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.18.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.17.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.17.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.16.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.16.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.15.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.15.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.14.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.14.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.13.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.13.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.12.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.12.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.11.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.11.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.10.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.10.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.9.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.9.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.8.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.8.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.7.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.7.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.6.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.6.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.5.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.5.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.4.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.4.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.3.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.3.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.2.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.2.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.1.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.1.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [5.0.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/5.0.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [4.0.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/4.0.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/3.4.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/3.3.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/3.2.0/Google.Cloud.Dataproc.V1.ExecutionConfig)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/3.1.0/Google.Cloud.Dataproc.V1.ExecutionConfig) \n\n public sealed class ExecutionConfig : IMessage\u003cExecutionConfig\u003e, IEquatable\u003cExecutionConfig\u003e, IDeepCloneable\u003cExecutionConfig\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Cloud Dataproc v1 API class ExecutionConfig.\n\nExecution configuration for a workload. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e ExecutionConfig \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[ExecutionConfig](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/latest/Google.Cloud.Dataproc.V1.ExecutionConfig), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[ExecutionConfig](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/latest/Google.Cloud.Dataproc.V1.ExecutionConfig), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[ExecutionConfig](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/latest/Google.Cloud.Dataproc.V1.ExecutionConfig), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Dataproc.V1](/dotnet/docs/reference/Google.Cloud.Dataproc.V1/latest/Google.Cloud.Dataproc.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Dataproc.V1.dll\n\nConstructors\n------------\n\n### ExecutionConfig()\n\n public ExecutionConfig()\n\n### ExecutionConfig(ExecutionConfig)\n\n public ExecutionConfig(ExecutionConfig other)\n\nProperties\n----------\n\n### AuthenticationConfig\n\n public AuthenticationConfig AuthenticationConfig { get; set; }\n\nOptional. Authentication configuration used to set the default identity for\nthe workload execution. The config specifies the type of identity\n(service account or user) that will be used by workloads to access\nresources on the project(s).\n\n### HasNetworkUri\n\n public bool HasNetworkUri { get; }\n\nGets whether the \"network_uri\" field is set\n\n### HasSubnetworkUri\n\n public bool HasSubnetworkUri { get; }\n\nGets whether the \"subnetwork_uri\" field is set\n\n### IdleTtl\n\n public Duration IdleTtl { get; set; }\n\nOptional. Applies to sessions only. The duration to keep the session alive\nwhile it's idling. Exceeding this threshold causes the session to\nterminate. This field cannot be set on a batch workload. Minimum value is\n10 minutes; maximum value is 14 days (see JSON representation of\n[Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).\nDefaults to 1 hour if not set.\nIf both `ttl` and `idle_ttl` are specified for an interactive session,\nthe conditions are treated as `OR` conditions: the workload will be\nterminated when it has been idle for `idle_ttl` or when `ttl` has been\nexceeded, whichever occurs first.\n\n### KmsKey\n\n public string KmsKey { get; set; }\n\nOptional. The Cloud KMS key to use for encryption.\n\n### NetworkCase\n\n public ExecutionConfig.NetworkOneofCase NetworkCase { get; }\n\n### NetworkTags\n\n public RepeatedField\u003cstring\u003e NetworkTags { get; }\n\nOptional. Tags used for network traffic control.\n\n### NetworkUri\n\n public string NetworkUri { get; set; }\n\nOptional. Network URI to connect workload to.\n\n### ServiceAccount\n\n public string ServiceAccount { get; set; }\n\nOptional. Service account that used to execute workload.\n\n### StagingBucket\n\n public string StagingBucket { get; set; }\n\nOptional. A Cloud Storage bucket used to stage workload dependencies,\nconfig files, and store workload output and other ephemeral data, such as\nSpark history files. If you do not specify a staging bucket, Cloud Dataproc\nwill determine a Cloud Storage location according to the region where your\nworkload is running, and then create and manage project-level, per-location\nstaging and temporary buckets.\n**This field requires a Cloud Storage bucket name, not a `gs://...` URI to\na Cloud Storage bucket.**\n\n### SubnetworkUri\n\n public string SubnetworkUri { get; set; }\n\nOptional. Subnetwork URI to connect workload to.\n\n### Ttl\n\n public Duration Ttl { get; set; }\n\nOptional. The duration after which the workload will be terminated,\nspecified as the JSON representation for\n[Duration](https://protobuf.dev/programming-guides/proto3/#json).\nWhen the workload exceeds this duration, it will be unconditionally\nterminated without waiting for ongoing work to finish. If `ttl` is not\nspecified for a batch workload, the workload will be allowed to run until\nit exits naturally (or run forever without exiting). If `ttl` is not\nspecified for an interactive session, it defaults to 24 hours. If `ttl` is\nnot specified for a batch that uses 2.1+ runtime version, it defaults to 4\nhours. Minimum value is 10 minutes; maximum value is 14 days. If both `ttl`\nand `idle_ttl` are specified (for an interactive session), the conditions\nare treated as `OR` conditions: the workload will be terminated when it has\nbeen idle for `idle_ttl` or when `ttl` has been exceeded, whichever occurs\nfirst."]]