@@ -51,6 +51,7 @@ const (
5151 policyInactiveTopicDeleteMode = "delete_mode"
5252
5353 policySubscriptionExpirationTimeMinutes = "subscription_expiration_time_minutes"
54+ policyOffloadThreshold = "offload_threshold"
5455)
5556
5657type PulsarNamespacePolicies struct {
@@ -65,6 +66,7 @@ type PulsarNamespacePolicies struct {
6566 RetentionPolicies * PulsarNamespaceRetentionPolicies `tfsdk:"retention_policies" json:"retention_policies,omitempty"`
6667 InactiveTopicPolicies * PulsarNamespaceInactiveTopicPolicies `tfsdk:"inactive_topic_policies" json:"inactive_topic_policies,omitempty"`
6768 SubscriptionExpirationTimeMinutes * int64 `tfsdk:"subscription_expiration_time_minutes" json:"subscription_expiration_time_minutes,omitempty"`
69+ OffloadThreshold * int64 `tfsdk:"offload_threshold" json:"offload_threshold,omitempty"`
6870}
6971
7072type PulsarNamespaceRetentionPolicies struct {
@@ -199,6 +201,7 @@ var (
199201 },
200202 },
201203 policySubscriptionExpirationTimeMinutes : int64PulsarNamespacePolicyAttribute ,
204+ policyOffloadThreshold : int64PulsarNamespacePolicyAttribute ,
202205 },
203206 }
204207)
@@ -316,6 +319,10 @@ func setNamespacePolicies(ctx context.Context, client *pulsaradmin.ClientWithRes
316319 resp , err := client .NamespacesSetSchemaValidationEnforced (ctx , tenant , namespace , * policies .SchemaValidationEnforced , requestEditors ... )
317320 diags .Append (HTTPResponseDiagWarn (resp , err , pulsarNamespacePolicyError (policySchemaValidationEnforced ))... )
318321 }
322+ if policies .OffloadThreshold != nil {
323+ resp , err := client .NamespacesSetOffloadThreshold (ctx , tenant , namespace , * policies .OffloadThreshold , requestEditors ... )
324+ diags .Append (HTTPResponseDiagWarn (resp , err , pulsarNamespacePolicyError (policyOffloadThreshold ))... )
325+ }
319326
320327 // Nested objects
321328 if policies .AutoTopicCreationOverride != nil {
@@ -334,7 +341,6 @@ func setNamespacePolicies(ctx context.Context, client *pulsaradmin.ClientWithRes
334341 resp , err := client .NamespacesSetRetention (ctx , tenant , namespace , * policies .RetentionPolicies , requestEditors ... )
335342 diags .Append (HTTPResponseDiagWarn (resp , err , pulsarNamespacePolicyError (policyRetentionPolicies ))... )
336343 }
337-
338344 if policies .InactiveTopicPolicies != nil {
339345 resp , err := client .NamespacesSetInactiveTopicPolicies (ctx , tenant , namespace , * policies .InactiveTopicPolicies , requestEditors ... )
340346 diags .Append (HTTPResponseDiagWarn (resp , err , pulsarNamespacePolicyError (policyInactiveTopicPolicies ))... )
0 commit comments