/
api_op_DescribeResize.go
194 lines (165 loc) · 6.48 KB
/
api_op_DescribeResize.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
// Code generated by smithy-go-codegen DO NOT EDIT.
package redshift
import (
"context"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Returns information about the last resize operation for the specified cluster.
// If no resize operation has ever been initiated for the specified cluster, a HTTP
// 404 error is returned. If a resize operation was initiated and completed, the
// status of the resize remains as SUCCEEDED until the next resize. A resize
// operation can be requested using ModifyCluster and specifying a different number
// or type of nodes for the cluster.
func (c *Client) DescribeResize(ctx context.Context, params *DescribeResizeInput, optFns ...func(*Options)) (*DescribeResizeOutput, error) {
if params == nil {
params = &DescribeResizeInput{}
}
result, metadata, err := c.invokeOperation(ctx, "DescribeResize", params, optFns, c.addOperationDescribeResizeMiddlewares)
if err != nil {
return nil, err
}
out := result.(*DescribeResizeOutput)
out.ResultMetadata = metadata
return out, nil
}
//
type DescribeResizeInput struct {
// The unique identifier of a cluster whose resize progress you are requesting.
// This parameter is case-sensitive. By default, resize operations for all clusters
// defined for an Amazon Web Services account are returned.
//
// This member is required.
ClusterIdentifier *string
noSmithyDocumentSerde
}
// Describes the result of a cluster resize operation.
type DescribeResizeOutput struct {
// The average rate of the resize operation over the last few minutes, measured in
// megabytes per second. After the resize operation completes, this value shows the
// average rate of the entire resize operation.
AvgResizeRateInMegaBytesPerSecond *float64
// The percent of data transferred from source cluster to target cluster.
DataTransferProgressPercent *float64
// The amount of seconds that have elapsed since the resize operation began. After
// the resize operation completes, this value shows the total actual time, in
// seconds, for the resize operation.
ElapsedTimeInSeconds *int64
// The estimated time remaining, in seconds, until the resize operation is
// complete. This value is calculated based on the average resize rate and the
// estimated amount of data remaining to be processed. Once the resize operation is
// complete, this value will be 0.
EstimatedTimeToCompletionInSeconds *int64
// The names of tables that have been completely imported . Valid Values: List of
// table names.
ImportTablesCompleted []string
// The names of tables that are being currently imported. Valid Values: List of
// table names.
ImportTablesInProgress []string
// The names of tables that have not been yet imported. Valid Values: List of table
// names
ImportTablesNotStarted []string
// An optional string to provide additional details about the resize action.
Message *string
// While the resize operation is in progress, this value shows the current amount
// of data, in megabytes, that has been processed so far. When the resize operation
// is complete, this value shows the total amount of data, in megabytes, on the
// cluster, which may be more or less than TotalResizeDataInMegaBytes (the
// estimated total amount of data before resize).
ProgressInMegaBytes *int64
// An enum with possible values of ClassicResize and ElasticResize. These values
// describe the type of resize operation being performed.
ResizeType *string
// The status of the resize operation. Valid Values: NONE | IN_PROGRESS | FAILED |
// SUCCEEDED | CANCELLING
Status *string
// The cluster type after the resize operation is complete. Valid Values:
// multi-node | single-node
TargetClusterType *string
// The type of encryption for the cluster after the resize is complete. Possible
// values are KMS and None.
TargetEncryptionType *string
// The node type that the cluster will have after the resize operation is complete.
TargetNodeType *string
// The number of nodes that the cluster will have after the resize operation is
// complete.
TargetNumberOfNodes *int32
// The estimated total amount of data, in megabytes, on the cluster before the
// resize operation began.
TotalResizeDataInMegaBytes *int64
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationDescribeResizeMiddlewares(stack *middleware.Stack, options Options) (err error) {
err = stack.Serialize.Add(&awsAwsquery_serializeOpDescribeResize{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDescribeResize{}, middleware.After)
if err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
return err
}
if err = addRetryMiddlewares(stack, options); err != nil {
return err
}
if err = addHTTPSignerV4Middleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
return err
}
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addOpDescribeResizeValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeResize(options.Region), middleware.Before); err != nil {
return err
}
if err = addRequestIDRetrieverMiddleware(stack); err != nil {
return err
}
if err = addResponseErrorMiddleware(stack); err != nil {
return err
}
if err = addRequestResponseLogging(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opDescribeResize(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
SigningName: "redshift",
OperationName: "DescribeResize",
}
}