Ver código fonte

GPDB SDK Auto Released By shenshi,Version:1.53.37

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 6 anos atrás
pai
commit
00b66a25b1
71 arquivos alterados com 4688 adições e 0 exclusões
  1. 3 0
      ChangeLog.txt
  2. 107 0
      services/gpdb/add_bu_db_instance_relation.go
  3. 108 0
      services/gpdb/allocate_instance_public_connection.go
  4. 81 0
      services/gpdb/client.go
  5. 108 0
      services/gpdb/create_account.go
  6. 122 0
      services/gpdb/create_db_instance.go
  7. 104 0
      services/gpdb/delete_database.go
  8. 105 0
      services/gpdb/delete_db_instance.go
  9. 105 0
      services/gpdb/describe_accounts.go
  10. 105 0
      services/gpdb/describe_db_instance_attribute.go
  11. 104 0
      services/gpdb/describe_db_instance_ip_array_list.go
  12. 105 0
      services/gpdb/describe_db_instance_net_info.go
  13. 111 0
      services/gpdb/describe_db_instance_performance.go
  14. 119 0
      services/gpdb/describe_db_instances.go
  15. 110 0
      services/gpdb/describe_rds_v_switchs.go
  16. 109 0
      services/gpdb/describe_rds_vpcs.go
  17. 103 0
      services/gpdb/describe_regions.go
  18. 109 0
      services/gpdb/describe_resource_usage.go
  19. 114 0
      services/gpdb/describe_slow_log_records.go
  20. 104 0
      services/gpdb/describe_sql_collector_policy.go
  21. 110 0
      services/gpdb/describe_sql_log_files.go
  22. 115 0
      services/gpdb/describe_sql_log_records.go
  23. 118 0
      services/gpdb/list_tag_resources.go
  24. 105 0
      services/gpdb/modify_account_description.go
  25. 104 0
      services/gpdb/modify_db_instance_connection_mode.go
  26. 106 0
      services/gpdb/modify_db_instance_connection_string.go
  27. 104 0
      services/gpdb/modify_db_instance_description.go
  28. 105 0
      services/gpdb/modify_db_instance_maintain_time.go
  29. 107 0
      services/gpdb/modify_db_instance_network_type.go
  30. 106 0
      services/gpdb/modify_security_ips.go
  31. 104 0
      services/gpdb/modify_sql_collector_policy.go
  32. 104 0
      services/gpdb/release_instance_public_connection.go
  33. 105 0
      services/gpdb/reset_account_password.go
  34. 104 0
      services/gpdb/restart_db_instance.go
  35. 21 0
      services/gpdb/struct_accounts.go
  36. 38 0
      services/gpdb/struct_db_instance.go
  37. 24 0
      services/gpdb/struct_db_instance_account.go
  38. 53 0
      services/gpdb/struct_db_instance_attribute.go
  39. 23 0
      services/gpdb/struct_db_instance_ip_array.go
  40. 26 0
      services/gpdb/struct_db_instance_net_info.go
  41. 21 0
      services/gpdb/struct_db_instance_net_infos.go
  42. 21 0
      services/gpdb/struct_items_in_describe_db_instance_attribute.go
  43. 21 0
      services/gpdb/struct_items_in_describe_db_instance_ip_array_list.go
  44. 21 0
      services/gpdb/struct_items_in_describe_db_instances.go
  45. 21 0
      services/gpdb/struct_items_in_describe_slow_log_records.go
  46. 21 0
      services/gpdb/struct_items_in_describe_sql_log_files.go
  47. 21 0
      services/gpdb/struct_items_in_describe_sql_log_records.go
  48. 26 0
      services/gpdb/struct_log_file.go
  49. 21 0
      services/gpdb/struct_performance_keys.go
  50. 22 0
      services/gpdb/struct_region.go
  51. 21 0
      services/gpdb/struct_regions.go
  52. 28 0
      services/gpdb/struct_sql_record.go
  53. 28 0
      services/gpdb/struct_sql_slow_record.go
  54. 22 0
      services/gpdb/struct_tag.go
  55. 24 0
      services/gpdb/struct_tag_resource.go
  56. 21 0
      services/gpdb/struct_tag_resources.go
  57. 21 0
      services/gpdb/struct_tags_in_describe_db_instance_attribute.go
  58. 21 0
      services/gpdb/struct_tags_in_describe_db_instances.go
  59. 28 0
      services/gpdb/struct_v_switch.go
  60. 21 0
      services/gpdb/struct_v_switch_in_describe_rds_v_switchs.go
  61. 31 0
      services/gpdb/struct_v_switch_item.go
  62. 21 0
      services/gpdb/struct_v_switches.go
  63. 21 0
      services/gpdb/struct_v_switchs.go
  64. 21 0
      services/gpdb/struct_vpc.go
  65. 31 0
      services/gpdb/struct_vpc_item.go
  66. 21 0
      services/gpdb/struct_vpcs.go
  67. 22 0
      services/gpdb/struct_zone.go
  68. 21 0
      services/gpdb/struct_zones.go
  69. 105 0
      services/gpdb/switch_db_instance_net_type.go
  70. 115 0
      services/gpdb/tag_resources.go
  71. 110 0
      services/gpdb/untag_resources.go

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2019-03-14 Version: 1.53.37
+1,  Update Dependency
+
 2019-03-14 Version: 1.53.36
 1, Update Dependency
 

+ 107 - 0
services/gpdb/add_bu_db_instance_relation.go

@@ -0,0 +1,107 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// AddBuDBInstanceRelation invokes the gpdb.AddBuDBInstanceRelation API synchronously
+// api document: https://help.aliyun.com/api/gpdb/addbudbinstancerelation.html
+func (client *Client) AddBuDBInstanceRelation(request *AddBuDBInstanceRelationRequest) (response *AddBuDBInstanceRelationResponse, err error) {
+	response = CreateAddBuDBInstanceRelationResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddBuDBInstanceRelationWithChan invokes the gpdb.AddBuDBInstanceRelation API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/addbudbinstancerelation.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddBuDBInstanceRelationWithChan(request *AddBuDBInstanceRelationRequest) (<-chan *AddBuDBInstanceRelationResponse, <-chan error) {
+	responseChan := make(chan *AddBuDBInstanceRelationResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddBuDBInstanceRelation(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddBuDBInstanceRelationWithCallback invokes the gpdb.AddBuDBInstanceRelation API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/addbudbinstancerelation.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddBuDBInstanceRelationWithCallback(request *AddBuDBInstanceRelationRequest, callback func(response *AddBuDBInstanceRelationResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddBuDBInstanceRelationResponse
+		var err error
+		defer close(result)
+		response, err = client.AddBuDBInstanceRelation(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddBuDBInstanceRelationRequest is the request struct for api AddBuDBInstanceRelation
+type AddBuDBInstanceRelationRequest struct {
+	*requests.RpcRequest
+	BusinessUnit string           `position:"Query" name:"BusinessUnit"`
+	DBInstanceId string           `position:"Query" name:"DBInstanceId"`
+	OwnerId      requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// AddBuDBInstanceRelationResponse is the response struct for api AddBuDBInstanceRelation
+type AddBuDBInstanceRelationResponse struct {
+	*responses.BaseResponse
+	RequestId      string `json:"RequestId" xml:"RequestId"`
+	BusinessUnit   string `json:"BusinessUnit" xml:"BusinessUnit"`
+	DBInstanceName string `json:"DBInstanceName" xml:"DBInstanceName"`
+}
+
+// CreateAddBuDBInstanceRelationRequest creates a request to invoke AddBuDBInstanceRelation API
+func CreateAddBuDBInstanceRelationRequest() (request *AddBuDBInstanceRelationRequest) {
+	request = &AddBuDBInstanceRelationRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "AddBuDBInstanceRelation", "gpdb", "openAPI")
+	return
+}
+
+// CreateAddBuDBInstanceRelationResponse creates a response to parse from AddBuDBInstanceRelation response
+func CreateAddBuDBInstanceRelationResponse() (response *AddBuDBInstanceRelationResponse) {
+	response = &AddBuDBInstanceRelationResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/gpdb/allocate_instance_public_connection.go

@@ -0,0 +1,108 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// AllocateInstancePublicConnection invokes the gpdb.AllocateInstancePublicConnection API synchronously
+// api document: https://help.aliyun.com/api/gpdb/allocateinstancepublicconnection.html
+func (client *Client) AllocateInstancePublicConnection(request *AllocateInstancePublicConnectionRequest) (response *AllocateInstancePublicConnectionResponse, err error) {
+	response = CreateAllocateInstancePublicConnectionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AllocateInstancePublicConnectionWithChan invokes the gpdb.AllocateInstancePublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/allocateinstancepublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AllocateInstancePublicConnectionWithChan(request *AllocateInstancePublicConnectionRequest) (<-chan *AllocateInstancePublicConnectionResponse, <-chan error) {
+	responseChan := make(chan *AllocateInstancePublicConnectionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AllocateInstancePublicConnection(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AllocateInstancePublicConnectionWithCallback invokes the gpdb.AllocateInstancePublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/allocateinstancepublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AllocateInstancePublicConnectionWithCallback(request *AllocateInstancePublicConnectionRequest, callback func(response *AllocateInstancePublicConnectionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AllocateInstancePublicConnectionResponse
+		var err error
+		defer close(result)
+		response, err = client.AllocateInstancePublicConnection(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AllocateInstancePublicConnectionRequest is the request struct for api AllocateInstancePublicConnection
+type AllocateInstancePublicConnectionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId        requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ConnectionStringPrefix string           `position:"Query" name:"ConnectionStringPrefix"`
+	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
+	Port                   string           `position:"Query" name:"Port"`
+	DBInstanceId           string           `position:"Query" name:"DBInstanceId"`
+	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// AllocateInstancePublicConnectionResponse is the response struct for api AllocateInstancePublicConnection
+type AllocateInstancePublicConnectionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateAllocateInstancePublicConnectionRequest creates a request to invoke AllocateInstancePublicConnection API
+func CreateAllocateInstancePublicConnectionRequest() (request *AllocateInstancePublicConnectionRequest) {
+	request = &AllocateInstancePublicConnectionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "AllocateInstancePublicConnection", "gpdb", "openAPI")
+	return
+}
+
+// CreateAllocateInstancePublicConnectionResponse creates a response to parse from AllocateInstancePublicConnection response
+func CreateAllocateInstancePublicConnectionResponse() (response *AllocateInstancePublicConnectionResponse) {
+	response = &AllocateInstancePublicConnectionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 81 - 0
services/gpdb/client.go

@@ -0,0 +1,81 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://help.aliyun.com/document_detail/66217.html
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://help.aliyun.com/document_detail/66223.html
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// attention: rsa key pair auth is only Japan regions available
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	return
+}

+ 108 - 0
services/gpdb/create_account.go

@@ -0,0 +1,108 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateAccount invokes the gpdb.CreateAccount API synchronously
+// api document: https://help.aliyun.com/api/gpdb/createaccount.html
+func (client *Client) CreateAccount(request *CreateAccountRequest) (response *CreateAccountResponse, err error) {
+	response = CreateCreateAccountResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateAccountWithChan invokes the gpdb.CreateAccount API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/createaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateAccountWithChan(request *CreateAccountRequest) (<-chan *CreateAccountResponse, <-chan error) {
+	responseChan := make(chan *CreateAccountResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateAccount(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateAccountWithCallback invokes the gpdb.CreateAccount API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/createaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateAccountWithCallback(request *CreateAccountRequest, callback func(response *CreateAccountResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateAccountResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateAccount(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateAccountRequest is the request struct for api CreateAccount
+type CreateAccountRequest struct {
+	*requests.RpcRequest
+	AccountPassword    string           `position:"Query" name:"AccountPassword"`
+	AccountName        string           `position:"Query" name:"AccountName"`
+	DatabaseName       string           `position:"Query" name:"DatabaseName"`
+	DBInstanceId       string           `position:"Query" name:"DBInstanceId"`
+	OwnerId            requests.Integer `position:"Query" name:"OwnerId"`
+	AccountDescription string           `position:"Query" name:"AccountDescription"`
+}
+
+// CreateAccountResponse is the response struct for api CreateAccount
+type CreateAccountResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateCreateAccountRequest creates a request to invoke CreateAccount API
+func CreateCreateAccountRequest() (request *CreateAccountRequest) {
+	request = &CreateAccountRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "CreateAccount", "gpdb", "openAPI")
+	return
+}
+
+// CreateCreateAccountResponse creates a response to parse from CreateAccount response
+func CreateCreateAccountResponse() (response *CreateAccountResponse) {
+	response = &CreateAccountResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 122 - 0
services/gpdb/create_db_instance.go

@@ -0,0 +1,122 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateDBInstance invokes the gpdb.CreateDBInstance API synchronously
+// api document: https://help.aliyun.com/api/gpdb/createdbinstance.html
+func (client *Client) CreateDBInstance(request *CreateDBInstanceRequest) (response *CreateDBInstanceResponse, err error) {
+	response = CreateCreateDBInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateDBInstanceWithChan invokes the gpdb.CreateDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/createdbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDBInstanceWithChan(request *CreateDBInstanceRequest) (<-chan *CreateDBInstanceResponse, <-chan error) {
+	responseChan := make(chan *CreateDBInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateDBInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateDBInstanceWithCallback invokes the gpdb.CreateDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/createdbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDBInstanceWithCallback(request *CreateDBInstanceRequest, callback func(response *CreateDBInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateDBInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateDBInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateDBInstanceRequest is the request struct for api CreateDBInstance
+type CreateDBInstanceRequest struct {
+	*requests.RpcRequest
+	DBInstanceGroupCount  string           `position:"Query" name:"DBInstanceGroupCount"`
+	Period                string           `position:"Query" name:"Period"`
+	ClientToken           string           `position:"Query" name:"ClientToken"`
+	EngineVersion         string           `position:"Query" name:"EngineVersion"`
+	OwnerId               requests.Integer `position:"Query" name:"OwnerId"`
+	UsedTime              string           `position:"Query" name:"UsedTime"`
+	DBInstanceClass       string           `position:"Query" name:"DBInstanceClass"`
+	SecurityIPList        string           `position:"Query" name:"SecurityIPList"`
+	VSwitchId             string           `position:"Query" name:"VSwitchId"`
+	PrivateIpAddress      string           `position:"Query" name:"PrivateIpAddress"`
+	Engine                string           `position:"Query" name:"Engine"`
+	VPCId                 string           `position:"Query" name:"VPCId"`
+	ZoneId                string           `position:"Query" name:"ZoneId"`
+	DBInstanceDescription string           `position:"Query" name:"DBInstanceDescription"`
+	PayType               string           `position:"Query" name:"PayType"`
+	InstanceNetworkType   string           `position:"Query" name:"InstanceNetworkType"`
+}
+
+// CreateDBInstanceResponse is the response struct for api CreateDBInstance
+type CreateDBInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId        string `json:"RequestId" xml:"RequestId"`
+	DBInstanceId     string `json:"DBInstanceId" xml:"DBInstanceId"`
+	OrderId          string `json:"OrderId" xml:"OrderId"`
+	ConnectionString string `json:"ConnectionString" xml:"ConnectionString"`
+	Port             string `json:"Port" xml:"Port"`
+}
+
+// CreateCreateDBInstanceRequest creates a request to invoke CreateDBInstance API
+func CreateCreateDBInstanceRequest() (request *CreateDBInstanceRequest) {
+	request = &CreateDBInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "CreateDBInstance", "gpdb", "openAPI")
+	return
+}
+
+// CreateCreateDBInstanceResponse creates a response to parse from CreateDBInstance response
+func CreateCreateDBInstanceResponse() (response *CreateDBInstanceResponse) {
+	response = &CreateDBInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/delete_database.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeleteDatabase invokes the gpdb.DeleteDatabase API synchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedatabase.html
+func (client *Client) DeleteDatabase(request *DeleteDatabaseRequest) (response *DeleteDatabaseResponse, err error) {
+	response = CreateDeleteDatabaseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteDatabaseWithChan invokes the gpdb.DeleteDatabase API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedatabase.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDatabaseWithChan(request *DeleteDatabaseRequest) (<-chan *DeleteDatabaseResponse, <-chan error) {
+	responseChan := make(chan *DeleteDatabaseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteDatabase(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteDatabaseWithCallback invokes the gpdb.DeleteDatabase API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedatabase.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDatabaseWithCallback(request *DeleteDatabaseRequest, callback func(response *DeleteDatabaseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteDatabaseResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteDatabase(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteDatabaseRequest is the request struct for api DeleteDatabase
+type DeleteDatabaseRequest struct {
+	*requests.RpcRequest
+	DBName       string `position:"Query" name:"DBName"`
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DeleteDatabaseResponse is the response struct for api DeleteDatabase
+type DeleteDatabaseResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteDatabaseRequest creates a request to invoke DeleteDatabase API
+func CreateDeleteDatabaseRequest() (request *DeleteDatabaseRequest) {
+	request = &DeleteDatabaseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DeleteDatabase", "gpdb", "openAPI")
+	return
+}
+
+// CreateDeleteDatabaseResponse creates a response to parse from DeleteDatabase response
+func CreateDeleteDatabaseResponse() (response *DeleteDatabaseResponse) {
+	response = &DeleteDatabaseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/delete_db_instance.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeleteDBInstance invokes the gpdb.DeleteDBInstance API synchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedbinstance.html
+func (client *Client) DeleteDBInstance(request *DeleteDBInstanceRequest) (response *DeleteDBInstanceResponse, err error) {
+	response = CreateDeleteDBInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteDBInstanceWithChan invokes the gpdb.DeleteDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDBInstanceWithChan(request *DeleteDBInstanceRequest) (<-chan *DeleteDBInstanceResponse, <-chan error) {
+	responseChan := make(chan *DeleteDBInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteDBInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteDBInstanceWithCallback invokes the gpdb.DeleteDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/deletedbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDBInstanceWithCallback(request *DeleteDBInstanceRequest, callback func(response *DeleteDBInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteDBInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteDBInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteDBInstanceRequest is the request struct for api DeleteDBInstance
+type DeleteDBInstanceRequest struct {
+	*requests.RpcRequest
+	ClientToken  string           `position:"Query" name:"ClientToken"`
+	DBInstanceId string           `position:"Query" name:"DBInstanceId"`
+	OwnerId      requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteDBInstanceResponse is the response struct for api DeleteDBInstance
+type DeleteDBInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteDBInstanceRequest creates a request to invoke DeleteDBInstance API
+func CreateDeleteDBInstanceRequest() (request *DeleteDBInstanceRequest) {
+	request = &DeleteDBInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DeleteDBInstance", "gpdb", "openAPI")
+	return
+}
+
+// CreateDeleteDBInstanceResponse creates a response to parse from DeleteDBInstance response
+func CreateDeleteDBInstanceResponse() (response *DeleteDBInstanceResponse) {
+	response = &DeleteDBInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/describe_accounts.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeAccounts invokes the gpdb.DescribeAccounts API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describeaccounts.html
+func (client *Client) DescribeAccounts(request *DescribeAccountsRequest) (response *DescribeAccountsResponse, err error) {
+	response = CreateDescribeAccountsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAccountsWithChan invokes the gpdb.DescribeAccounts API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeaccounts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountsWithChan(request *DescribeAccountsRequest) (<-chan *DescribeAccountsResponse, <-chan error) {
+	responseChan := make(chan *DescribeAccountsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAccounts(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAccountsWithCallback invokes the gpdb.DescribeAccounts API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeaccounts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountsWithCallback(request *DescribeAccountsRequest, callback func(response *DescribeAccountsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAccountsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAccounts(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAccountsRequest is the request struct for api DescribeAccounts
+type DescribeAccountsRequest struct {
+	*requests.RpcRequest
+	AccountName  string `position:"Query" name:"AccountName"`
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DescribeAccountsResponse is the response struct for api DescribeAccounts
+type DescribeAccountsResponse struct {
+	*responses.BaseResponse
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	Accounts  Accounts `json:"Accounts" xml:"Accounts"`
+}
+
+// CreateDescribeAccountsRequest creates a request to invoke DescribeAccounts API
+func CreateDescribeAccountsRequest() (request *DescribeAccountsRequest) {
+	request = &DescribeAccountsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeAccounts", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeAccountsResponse creates a response to parse from DescribeAccounts response
+func CreateDescribeAccountsResponse() (response *DescribeAccountsResponse) {
+	response = &DescribeAccountsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/describe_db_instance_attribute.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBInstanceAttribute invokes the gpdb.DescribeDBInstanceAttribute API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceattribute.html
+func (client *Client) DescribeDBInstanceAttribute(request *DescribeDBInstanceAttributeRequest) (response *DescribeDBInstanceAttributeResponse, err error) {
+	response = CreateDescribeDBInstanceAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBInstanceAttributeWithChan invokes the gpdb.DescribeDBInstanceAttribute API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceAttributeWithChan(request *DescribeDBInstanceAttributeRequest) (<-chan *DescribeDBInstanceAttributeResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBInstanceAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBInstanceAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBInstanceAttributeWithCallback invokes the gpdb.DescribeDBInstanceAttribute API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceAttributeWithCallback(request *DescribeDBInstanceAttributeRequest, callback func(response *DescribeDBInstanceAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBInstanceAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBInstanceAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBInstanceAttributeRequest is the request struct for api DescribeDBInstanceAttribute
+type DescribeDBInstanceAttributeRequest struct {
+	*requests.RpcRequest
+	DBInstanceId string           `position:"Query" name:"DBInstanceId"`
+	OwnerId      requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeDBInstanceAttributeResponse is the response struct for api DescribeDBInstanceAttribute
+type DescribeDBInstanceAttributeResponse struct {
+	*responses.BaseResponse
+	RequestId string                             `json:"RequestId" xml:"RequestId"`
+	Items     ItemsInDescribeDBInstanceAttribute `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBInstanceAttributeRequest creates a request to invoke DescribeDBInstanceAttribute API
+func CreateDescribeDBInstanceAttributeRequest() (request *DescribeDBInstanceAttributeRequest) {
+	request = &DescribeDBInstanceAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeDBInstanceAttribute", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeDBInstanceAttributeResponse creates a response to parse from DescribeDBInstanceAttribute response
+func CreateDescribeDBInstanceAttributeResponse() (response *DescribeDBInstanceAttributeResponse) {
+	response = &DescribeDBInstanceAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/describe_db_instance_ip_array_list.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBInstanceIPArrayList invokes the gpdb.DescribeDBInstanceIPArrayList API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceiparraylist.html
+func (client *Client) DescribeDBInstanceIPArrayList(request *DescribeDBInstanceIPArrayListRequest) (response *DescribeDBInstanceIPArrayListResponse, err error) {
+	response = CreateDescribeDBInstanceIPArrayListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBInstanceIPArrayListWithChan invokes the gpdb.DescribeDBInstanceIPArrayList API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceiparraylist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceIPArrayListWithChan(request *DescribeDBInstanceIPArrayListRequest) (<-chan *DescribeDBInstanceIPArrayListResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBInstanceIPArrayListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBInstanceIPArrayList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBInstanceIPArrayListWithCallback invokes the gpdb.DescribeDBInstanceIPArrayList API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceiparraylist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceIPArrayListWithCallback(request *DescribeDBInstanceIPArrayListRequest, callback func(response *DescribeDBInstanceIPArrayListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBInstanceIPArrayListResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBInstanceIPArrayList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBInstanceIPArrayListRequest is the request struct for api DescribeDBInstanceIPArrayList
+type DescribeDBInstanceIPArrayListRequest struct {
+	*requests.RpcRequest
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DescribeDBInstanceIPArrayListResponse is the response struct for api DescribeDBInstanceIPArrayList
+type DescribeDBInstanceIPArrayListResponse struct {
+	*responses.BaseResponse
+	RequestId string                               `json:"RequestId" xml:"RequestId"`
+	Items     ItemsInDescribeDBInstanceIPArrayList `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBInstanceIPArrayListRequest creates a request to invoke DescribeDBInstanceIPArrayList API
+func CreateDescribeDBInstanceIPArrayListRequest() (request *DescribeDBInstanceIPArrayListRequest) {
+	request = &DescribeDBInstanceIPArrayListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeDBInstanceIPArrayList", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeDBInstanceIPArrayListResponse creates a response to parse from DescribeDBInstanceIPArrayList response
+func CreateDescribeDBInstanceIPArrayListResponse() (response *DescribeDBInstanceIPArrayListResponse) {
+	response = &DescribeDBInstanceIPArrayListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/describe_db_instance_net_info.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBInstanceNetInfo invokes the gpdb.DescribeDBInstanceNetInfo API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstancenetinfo.html
+func (client *Client) DescribeDBInstanceNetInfo(request *DescribeDBInstanceNetInfoRequest) (response *DescribeDBInstanceNetInfoResponse, err error) {
+	response = CreateDescribeDBInstanceNetInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBInstanceNetInfoWithChan invokes the gpdb.DescribeDBInstanceNetInfo API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstancenetinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceNetInfoWithChan(request *DescribeDBInstanceNetInfoRequest) (<-chan *DescribeDBInstanceNetInfoResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBInstanceNetInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBInstanceNetInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBInstanceNetInfoWithCallback invokes the gpdb.DescribeDBInstanceNetInfo API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstancenetinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstanceNetInfoWithCallback(request *DescribeDBInstanceNetInfoRequest, callback func(response *DescribeDBInstanceNetInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBInstanceNetInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBInstanceNetInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBInstanceNetInfoRequest is the request struct for api DescribeDBInstanceNetInfo
+type DescribeDBInstanceNetInfoRequest struct {
+	*requests.RpcRequest
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DescribeDBInstanceNetInfoResponse is the response struct for api DescribeDBInstanceNetInfo
+type DescribeDBInstanceNetInfoResponse struct {
+	*responses.BaseResponse
+	RequestId           string             `json:"RequestId" xml:"RequestId"`
+	InstanceNetworkType string             `json:"InstanceNetworkType" xml:"InstanceNetworkType"`
+	DBInstanceNetInfos  DBInstanceNetInfos `json:"DBInstanceNetInfos" xml:"DBInstanceNetInfos"`
+}
+
+// CreateDescribeDBInstanceNetInfoRequest creates a request to invoke DescribeDBInstanceNetInfo API
+func CreateDescribeDBInstanceNetInfoRequest() (request *DescribeDBInstanceNetInfoRequest) {
+	request = &DescribeDBInstanceNetInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeDBInstanceNetInfo", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeDBInstanceNetInfoResponse creates a response to parse from DescribeDBInstanceNetInfo response
+func CreateDescribeDBInstanceNetInfoResponse() (response *DescribeDBInstanceNetInfoResponse) {
+	response = &DescribeDBInstanceNetInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/gpdb/describe_db_instance_performance.go

@@ -0,0 +1,111 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBInstancePerformance invokes the gpdb.DescribeDBInstancePerformance API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceperformance.html
+func (client *Client) DescribeDBInstancePerformance(request *DescribeDBInstancePerformanceRequest) (response *DescribeDBInstancePerformanceResponse, err error) {
+	response = CreateDescribeDBInstancePerformanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBInstancePerformanceWithChan invokes the gpdb.DescribeDBInstancePerformance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceperformance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstancePerformanceWithChan(request *DescribeDBInstancePerformanceRequest) (<-chan *DescribeDBInstancePerformanceResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBInstancePerformanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBInstancePerformance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBInstancePerformanceWithCallback invokes the gpdb.DescribeDBInstancePerformance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstanceperformance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstancePerformanceWithCallback(request *DescribeDBInstancePerformanceRequest, callback func(response *DescribeDBInstancePerformanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBInstancePerformanceResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBInstancePerformance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBInstancePerformanceRequest is the request struct for api DescribeDBInstancePerformance
+type DescribeDBInstancePerformanceRequest struct {
+	*requests.RpcRequest
+	EndTime      string `position:"Query" name:"EndTime"`
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+	StartTime    string `position:"Query" name:"StartTime"`
+	Key          string `position:"Query" name:"Key"`
+}
+
+// DescribeDBInstancePerformanceResponse is the response struct for api DescribeDBInstancePerformance
+type DescribeDBInstancePerformanceResponse struct {
+	*responses.BaseResponse
+	RequestId       string   `json:"RequestId" xml:"RequestId"`
+	DBInstanceId    string   `json:"DBInstanceId" xml:"DBInstanceId"`
+	Engine          string   `json:"Engine" xml:"Engine"`
+	StartTime       string   `json:"StartTime" xml:"StartTime"`
+	EndTime         string   `json:"EndTime" xml:"EndTime"`
+	PerformanceKeys []string `json:"PerformanceKeys" xml:"PerformanceKeys"`
+}
+
+// CreateDescribeDBInstancePerformanceRequest creates a request to invoke DescribeDBInstancePerformance API
+func CreateDescribeDBInstancePerformanceRequest() (request *DescribeDBInstancePerformanceRequest) {
+	request = &DescribeDBInstancePerformanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeDBInstancePerformance", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeDBInstancePerformanceResponse creates a response to parse from DescribeDBInstancePerformance response
+func CreateDescribeDBInstancePerformanceResponse() (response *DescribeDBInstancePerformanceResponse) {
+	response = &DescribeDBInstancePerformanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 119 - 0
services/gpdb/describe_db_instances.go

@@ -0,0 +1,119 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBInstances invokes the gpdb.DescribeDBInstances API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstances.html
+func (client *Client) DescribeDBInstances(request *DescribeDBInstancesRequest) (response *DescribeDBInstancesResponse, err error) {
+	response = CreateDescribeDBInstancesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBInstancesWithChan invokes the gpdb.DescribeDBInstances API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstances.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstancesWithChan(request *DescribeDBInstancesRequest) (<-chan *DescribeDBInstancesResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBInstancesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBInstances(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBInstancesWithCallback invokes the gpdb.DescribeDBInstances API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describedbinstances.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBInstancesWithCallback(request *DescribeDBInstancesRequest, callback func(response *DescribeDBInstancesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBInstancesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBInstances(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBInstancesRequest is the request struct for api DescribeDBInstances
+type DescribeDBInstancesRequest struct {
+	*requests.RpcRequest
+	DBInstanceIds         string                    `position:"Query" name:"DBInstanceIds"`
+	PageSize              requests.Integer          `position:"Query" name:"PageSize"`
+	DBInstanceDescription string                    `position:"Query" name:"DBInstanceDescription"`
+	Tag                   *[]DescribeDBInstancesTag `position:"Query" name:"Tag"  type:"Repeated"`
+	OwnerId               requests.Integer          `position:"Query" name:"OwnerId"`
+	InstanceNetworkType   string                    `position:"Query" name:"InstanceNetworkType"`
+	PageNumber            requests.Integer          `position:"Query" name:"PageNumber"`
+}
+
+// DescribeDBInstancesTag is a repeated param struct in DescribeDBInstancesRequest
+type DescribeDBInstancesTag struct {
+	Value string `name:"Value"`
+	Key   string `name:"Key"`
+}
+
+// DescribeDBInstancesResponse is the response struct for api DescribeDBInstances
+type DescribeDBInstancesResponse struct {
+	*responses.BaseResponse
+	RequestId        string                     `json:"RequestId" xml:"RequestId"`
+	PageNumber       int                        `json:"PageNumber" xml:"PageNumber"`
+	TotalRecordCount int                        `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	PageRecordCount  int                        `json:"PageRecordCount" xml:"PageRecordCount"`
+	Items            ItemsInDescribeDBInstances `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBInstancesRequest creates a request to invoke DescribeDBInstances API
+func CreateDescribeDBInstancesRequest() (request *DescribeDBInstancesRequest) {
+	request = &DescribeDBInstancesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeDBInstances", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeDBInstancesResponse creates a response to parse from DescribeDBInstances response
+func CreateDescribeDBInstancesResponse() (response *DescribeDBInstancesResponse) {
+	response = &DescribeDBInstancesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/gpdb/describe_rds_v_switchs.go

@@ -0,0 +1,110 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeRdsVSwitchs invokes the gpdb.DescribeRdsVSwitchs API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvswitchs.html
+func (client *Client) DescribeRdsVSwitchs(request *DescribeRdsVSwitchsRequest) (response *DescribeRdsVSwitchsResponse, err error) {
+	response = CreateDescribeRdsVSwitchsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeRdsVSwitchsWithChan invokes the gpdb.DescribeRdsVSwitchs API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvswitchs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRdsVSwitchsWithChan(request *DescribeRdsVSwitchsRequest) (<-chan *DescribeRdsVSwitchsResponse, <-chan error) {
+	responseChan := make(chan *DescribeRdsVSwitchsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeRdsVSwitchs(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeRdsVSwitchsWithCallback invokes the gpdb.DescribeRdsVSwitchs API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvswitchs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRdsVSwitchsWithCallback(request *DescribeRdsVSwitchsRequest, callback func(response *DescribeRdsVSwitchsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeRdsVSwitchsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeRdsVSwitchs(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeRdsVSwitchsRequest is the request struct for api DescribeRdsVSwitchs
+type DescribeRdsVSwitchsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	SecurityToken        string           `position:"Query" name:"SecurityToken"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	VpcId                string           `position:"Query" name:"VpcId"`
+	ZoneId               string           `position:"Query" name:"ZoneId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeRdsVSwitchsResponse is the response struct for api DescribeRdsVSwitchs
+type DescribeRdsVSwitchsResponse struct {
+	*responses.BaseResponse
+	RequestId string    `json:"RequestId" xml:"RequestId"`
+	VSwitches VSwitches `json:"VSwitches" xml:"VSwitches"`
+}
+
+// CreateDescribeRdsVSwitchsRequest creates a request to invoke DescribeRdsVSwitchs API
+func CreateDescribeRdsVSwitchsRequest() (request *DescribeRdsVSwitchsRequest) {
+	request = &DescribeRdsVSwitchsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeRdsVSwitchs", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeRdsVSwitchsResponse creates a response to parse from DescribeRdsVSwitchs response
+func CreateDescribeRdsVSwitchsResponse() (response *DescribeRdsVSwitchsResponse) {
+	response = &DescribeRdsVSwitchsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/gpdb/describe_rds_vpcs.go

@@ -0,0 +1,109 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeRdsVpcs invokes the gpdb.DescribeRdsVpcs API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvpcs.html
+func (client *Client) DescribeRdsVpcs(request *DescribeRdsVpcsRequest) (response *DescribeRdsVpcsResponse, err error) {
+	response = CreateDescribeRdsVpcsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeRdsVpcsWithChan invokes the gpdb.DescribeRdsVpcs API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvpcs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRdsVpcsWithChan(request *DescribeRdsVpcsRequest) (<-chan *DescribeRdsVpcsResponse, <-chan error) {
+	responseChan := make(chan *DescribeRdsVpcsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeRdsVpcs(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeRdsVpcsWithCallback invokes the gpdb.DescribeRdsVpcs API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describerdsvpcs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRdsVpcsWithCallback(request *DescribeRdsVpcsRequest, callback func(response *DescribeRdsVpcsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeRdsVpcsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeRdsVpcs(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeRdsVpcsRequest is the request struct for api DescribeRdsVpcs
+type DescribeRdsVpcsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	SecurityToken        string           `position:"Query" name:"SecurityToken"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	ZoneId               string           `position:"Query" name:"ZoneId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeRdsVpcsResponse is the response struct for api DescribeRdsVpcs
+type DescribeRdsVpcsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Vpcs      Vpcs   `json:"Vpcs" xml:"Vpcs"`
+}
+
+// CreateDescribeRdsVpcsRequest creates a request to invoke DescribeRdsVpcs API
+func CreateDescribeRdsVpcsRequest() (request *DescribeRdsVpcsRequest) {
+	request = &DescribeRdsVpcsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeRdsVpcs", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeRdsVpcsResponse creates a response to parse from DescribeRdsVpcs response
+func CreateDescribeRdsVpcsResponse() (response *DescribeRdsVpcsResponse) {
+	response = &DescribeRdsVpcsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/gpdb/describe_regions.go

@@ -0,0 +1,103 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeRegions invokes the gpdb.DescribeRegions API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describeregions.html
+func (client *Client) DescribeRegions(request *DescribeRegionsRequest) (response *DescribeRegionsResponse, err error) {
+	response = CreateDescribeRegionsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeRegionsWithChan invokes the gpdb.DescribeRegions API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRegionsWithChan(request *DescribeRegionsRequest) (<-chan *DescribeRegionsResponse, <-chan error) {
+	responseChan := make(chan *DescribeRegionsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeRegions(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeRegionsWithCallback invokes the gpdb.DescribeRegions API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRegionsWithCallback(request *DescribeRegionsRequest, callback func(response *DescribeRegionsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeRegionsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeRegions(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeRegionsRequest is the request struct for api DescribeRegions
+type DescribeRegionsRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeRegionsResponse is the response struct for api DescribeRegions
+type DescribeRegionsResponse struct {
+	*responses.BaseResponse
+	RequestId string  `json:"RequestId" xml:"RequestId"`
+	Regions   Regions `json:"Regions" xml:"Regions"`
+}
+
+// CreateDescribeRegionsRequest creates a request to invoke DescribeRegions API
+func CreateDescribeRegionsRequest() (request *DescribeRegionsRequest) {
+	request = &DescribeRegionsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeRegions", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeRegionsResponse creates a response to parse from DescribeRegions response
+func CreateDescribeRegionsResponse() (response *DescribeRegionsResponse) {
+	response = &DescribeRegionsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/gpdb/describe_resource_usage.go

@@ -0,0 +1,109 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeResourceUsage invokes the gpdb.DescribeResourceUsage API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describeresourceusage.html
+func (client *Client) DescribeResourceUsage(request *DescribeResourceUsageRequest) (response *DescribeResourceUsageResponse, err error) {
+	response = CreateDescribeResourceUsageResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeResourceUsageWithChan invokes the gpdb.DescribeResourceUsage API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeresourceusage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeResourceUsageWithChan(request *DescribeResourceUsageRequest) (<-chan *DescribeResourceUsageResponse, <-chan error) {
+	responseChan := make(chan *DescribeResourceUsageResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeResourceUsage(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeResourceUsageWithCallback invokes the gpdb.DescribeResourceUsage API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeresourceusage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeResourceUsageWithCallback(request *DescribeResourceUsageRequest, callback func(response *DescribeResourceUsageResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeResourceUsageResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeResourceUsage(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeResourceUsageRequest is the request struct for api DescribeResourceUsage
+type DescribeResourceUsageRequest struct {
+	*requests.RpcRequest
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DescribeResourceUsageResponse is the response struct for api DescribeResourceUsage
+type DescribeResourceUsageResponse struct {
+	*responses.BaseResponse
+	RequestId    string `json:"RequestId" xml:"RequestId"`
+	DBInstanceId string `json:"DBInstanceId" xml:"DBInstanceId"`
+	Engine       string `json:"Engine" xml:"Engine"`
+	DiskUsed     int    `json:"DiskUsed" xml:"DiskUsed"`
+	DataSize     int    `json:"DataSize" xml:"DataSize"`
+	LogSize      int    `json:"LogSize" xml:"LogSize"`
+	BackupSize   int    `json:"BackupSize" xml:"BackupSize"`
+}
+
+// CreateDescribeResourceUsageRequest creates a request to invoke DescribeResourceUsage API
+func CreateDescribeResourceUsageRequest() (request *DescribeResourceUsageRequest) {
+	request = &DescribeResourceUsageRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeResourceUsage", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeResourceUsageResponse creates a response to parse from DescribeResourceUsage response
+func CreateDescribeResourceUsageResponse() (response *DescribeResourceUsageResponse) {
+	response = &DescribeResourceUsageResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/gpdb/describe_slow_log_records.go

@@ -0,0 +1,114 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSlowLogRecords invokes the gpdb.DescribeSlowLogRecords API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describeslowlogrecords.html
+func (client *Client) DescribeSlowLogRecords(request *DescribeSlowLogRecordsRequest) (response *DescribeSlowLogRecordsResponse, err error) {
+	response = CreateDescribeSlowLogRecordsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSlowLogRecordsWithChan invokes the gpdb.DescribeSlowLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeslowlogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogRecordsWithChan(request *DescribeSlowLogRecordsRequest) (<-chan *DescribeSlowLogRecordsResponse, <-chan error) {
+	responseChan := make(chan *DescribeSlowLogRecordsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSlowLogRecords(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSlowLogRecordsWithCallback invokes the gpdb.DescribeSlowLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describeslowlogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogRecordsWithCallback(request *DescribeSlowLogRecordsRequest, callback func(response *DescribeSlowLogRecordsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSlowLogRecordsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSlowLogRecords(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSlowLogRecordsRequest is the request struct for api DescribeSlowLogRecords
+type DescribeSlowLogRecordsRequest struct {
+	*requests.RpcRequest
+	SQLId        requests.Integer `position:"Query" name:"SQLId"`
+	DBName       string           `position:"Query" name:"DBName"`
+	PageSize     requests.Integer `position:"Query" name:"PageSize"`
+	EndTime      string           `position:"Query" name:"EndTime"`
+	DBInstanceId string           `position:"Query" name:"DBInstanceId"`
+	StartTime    string           `position:"Query" name:"StartTime"`
+	PageNumber   requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// DescribeSlowLogRecordsResponse is the response struct for api DescribeSlowLogRecords
+type DescribeSlowLogRecordsResponse struct {
+	*responses.BaseResponse
+	RequestId        string                        `json:"RequestId" xml:"RequestId"`
+	Engine           string                        `json:"Engine" xml:"Engine"`
+	TotalRecordCount int                           `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	PageNumber       int                           `json:"PageNumber" xml:"PageNumber"`
+	PageRecordCount  int                           `json:"PageRecordCount" xml:"PageRecordCount"`
+	Items            ItemsInDescribeSlowLogRecords `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeSlowLogRecordsRequest creates a request to invoke DescribeSlowLogRecords API
+func CreateDescribeSlowLogRecordsRequest() (request *DescribeSlowLogRecordsRequest) {
+	request = &DescribeSlowLogRecordsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeSlowLogRecords", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeSlowLogRecordsResponse creates a response to parse from DescribeSlowLogRecords response
+func CreateDescribeSlowLogRecordsResponse() (response *DescribeSlowLogRecordsResponse) {
+	response = &DescribeSlowLogRecordsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/describe_sql_collector_policy.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSQLCollectorPolicy invokes the gpdb.DescribeSQLCollectorPolicy API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqlcollectorpolicy.html
+func (client *Client) DescribeSQLCollectorPolicy(request *DescribeSQLCollectorPolicyRequest) (response *DescribeSQLCollectorPolicyResponse, err error) {
+	response = CreateDescribeSQLCollectorPolicyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSQLCollectorPolicyWithChan invokes the gpdb.DescribeSQLCollectorPolicy API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqlcollectorpolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLCollectorPolicyWithChan(request *DescribeSQLCollectorPolicyRequest) (<-chan *DescribeSQLCollectorPolicyResponse, <-chan error) {
+	responseChan := make(chan *DescribeSQLCollectorPolicyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSQLCollectorPolicy(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSQLCollectorPolicyWithCallback invokes the gpdb.DescribeSQLCollectorPolicy API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqlcollectorpolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLCollectorPolicyWithCallback(request *DescribeSQLCollectorPolicyRequest, callback func(response *DescribeSQLCollectorPolicyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSQLCollectorPolicyResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSQLCollectorPolicy(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSQLCollectorPolicyRequest is the request struct for api DescribeSQLCollectorPolicy
+type DescribeSQLCollectorPolicyRequest struct {
+	*requests.RpcRequest
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// DescribeSQLCollectorPolicyResponse is the response struct for api DescribeSQLCollectorPolicy
+type DescribeSQLCollectorPolicyResponse struct {
+	*responses.BaseResponse
+	RequestId          string `json:"RequestId" xml:"RequestId"`
+	SQLCollectorStatus string `json:"SQLCollectorStatus" xml:"SQLCollectorStatus"`
+}
+
+// CreateDescribeSQLCollectorPolicyRequest creates a request to invoke DescribeSQLCollectorPolicy API
+func CreateDescribeSQLCollectorPolicyRequest() (request *DescribeSQLCollectorPolicyRequest) {
+	request = &DescribeSQLCollectorPolicyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeSQLCollectorPolicy", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeSQLCollectorPolicyResponse creates a response to parse from DescribeSQLCollectorPolicy response
+func CreateDescribeSQLCollectorPolicyResponse() (response *DescribeSQLCollectorPolicyResponse) {
+	response = &DescribeSQLCollectorPolicyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/gpdb/describe_sql_log_files.go

@@ -0,0 +1,110 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSQLLogFiles invokes the gpdb.DescribeSQLLogFiles API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogfiles.html
+func (client *Client) DescribeSQLLogFiles(request *DescribeSQLLogFilesRequest) (response *DescribeSQLLogFilesResponse, err error) {
+	response = CreateDescribeSQLLogFilesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSQLLogFilesWithChan invokes the gpdb.DescribeSQLLogFiles API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogfiles.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLLogFilesWithChan(request *DescribeSQLLogFilesRequest) (<-chan *DescribeSQLLogFilesResponse, <-chan error) {
+	responseChan := make(chan *DescribeSQLLogFilesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSQLLogFiles(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSQLLogFilesWithCallback invokes the gpdb.DescribeSQLLogFiles API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogfiles.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLLogFilesWithCallback(request *DescribeSQLLogFilesRequest, callback func(response *DescribeSQLLogFilesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSQLLogFilesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSQLLogFiles(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSQLLogFilesRequest is the request struct for api DescribeSQLLogFiles
+type DescribeSQLLogFilesRequest struct {
+	*requests.RpcRequest
+	FileName     string           `position:"Query" name:"FileName"`
+	PageSize     requests.Integer `position:"Query" name:"PageSize"`
+	DBInstanceId string           `position:"Query" name:"DBInstanceId"`
+	PageNumber   requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// DescribeSQLLogFilesResponse is the response struct for api DescribeSQLLogFiles
+type DescribeSQLLogFilesResponse struct {
+	*responses.BaseResponse
+	RequestId        string                     `json:"RequestId" xml:"RequestId"`
+	TotalRecordCount int                        `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	PageNumber       int                        `json:"PageNumber" xml:"PageNumber"`
+	PageRecordCount  int                        `json:"PageRecordCount" xml:"PageRecordCount"`
+	Items            ItemsInDescribeSQLLogFiles `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeSQLLogFilesRequest creates a request to invoke DescribeSQLLogFiles API
+func CreateDescribeSQLLogFilesRequest() (request *DescribeSQLLogFilesRequest) {
+	request = &DescribeSQLLogFilesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeSQLLogFiles", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeSQLLogFilesResponse creates a response to parse from DescribeSQLLogFiles response
+func CreateDescribeSQLLogFilesResponse() (response *DescribeSQLLogFilesResponse) {
+	response = &DescribeSQLLogFilesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/gpdb/describe_sql_log_records.go

@@ -0,0 +1,115 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSQLLogRecords invokes the gpdb.DescribeSQLLogRecords API synchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogrecords.html
+func (client *Client) DescribeSQLLogRecords(request *DescribeSQLLogRecordsRequest) (response *DescribeSQLLogRecordsResponse, err error) {
+	response = CreateDescribeSQLLogRecordsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSQLLogRecordsWithChan invokes the gpdb.DescribeSQLLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLLogRecordsWithChan(request *DescribeSQLLogRecordsRequest) (<-chan *DescribeSQLLogRecordsResponse, <-chan error) {
+	responseChan := make(chan *DescribeSQLLogRecordsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSQLLogRecords(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSQLLogRecordsWithCallback invokes the gpdb.DescribeSQLLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/describesqllogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSQLLogRecordsWithCallback(request *DescribeSQLLogRecordsRequest, callback func(response *DescribeSQLLogRecordsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSQLLogRecordsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSQLLogRecords(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSQLLogRecordsRequest is the request struct for api DescribeSQLLogRecords
+type DescribeSQLLogRecordsRequest struct {
+	*requests.RpcRequest
+	Database      string           `position:"Query" name:"Database"`
+	Form          string           `position:"Query" name:"Form"`
+	PageSize      requests.Integer `position:"Query" name:"PageSize"`
+	EndTime       string           `position:"Query" name:"EndTime"`
+	DBInstanceId  string           `position:"Query" name:"DBInstanceId"`
+	StartTime     string           `position:"Query" name:"StartTime"`
+	User          string           `position:"Query" name:"User"`
+	QueryKeywords string           `position:"Query" name:"QueryKeywords"`
+	PageNumber    requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// DescribeSQLLogRecordsResponse is the response struct for api DescribeSQLLogRecords
+type DescribeSQLLogRecordsResponse struct {
+	*responses.BaseResponse
+	RequestId        string                       `json:"RequestId" xml:"RequestId"`
+	TotalRecordCount int                          `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	PageNumber       int                          `json:"PageNumber" xml:"PageNumber"`
+	PageRecordCount  int                          `json:"PageRecordCount" xml:"PageRecordCount"`
+	Items            ItemsInDescribeSQLLogRecords `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeSQLLogRecordsRequest creates a request to invoke DescribeSQLLogRecords API
+func CreateDescribeSQLLogRecordsRequest() (request *DescribeSQLLogRecordsRequest) {
+	request = &DescribeSQLLogRecordsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "DescribeSQLLogRecords", "gpdb", "openAPI")
+	return
+}
+
+// CreateDescribeSQLLogRecordsResponse creates a response to parse from DescribeSQLLogRecords response
+func CreateDescribeSQLLogRecordsResponse() (response *DescribeSQLLogRecordsResponse) {
+	response = &DescribeSQLLogRecordsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 118 - 0
services/gpdb/list_tag_resources.go

@@ -0,0 +1,118 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ListTagResources invokes the gpdb.ListTagResources API synchronously
+// api document: https://help.aliyun.com/api/gpdb/listtagresources.html
+func (client *Client) ListTagResources(request *ListTagResourcesRequest) (response *ListTagResourcesResponse, err error) {
+	response = CreateListTagResourcesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListTagResourcesWithChan invokes the gpdb.ListTagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/listtagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTagResourcesWithChan(request *ListTagResourcesRequest) (<-chan *ListTagResourcesResponse, <-chan error) {
+	responseChan := make(chan *ListTagResourcesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListTagResources(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListTagResourcesWithCallback invokes the gpdb.ListTagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/listtagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTagResourcesWithCallback(request *ListTagResourcesRequest, callback func(response *ListTagResourcesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListTagResourcesResponse
+		var err error
+		defer close(result)
+		response, err = client.ListTagResources(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListTagResourcesRequest is the request struct for api ListTagResources
+type ListTagResourcesRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer       `position:"Query" name:"ResourceOwnerId"`
+	ResourceId           *[]string              `position:"Query" name:"ResourceId"  type:"Repeated"`
+	ResourceOwnerAccount string                 `position:"Query" name:"ResourceOwnerAccount"`
+	NextToken            string                 `position:"Query" name:"NextToken"`
+	OwnerAccount         string                 `position:"Query" name:"OwnerAccount"`
+	Tag                  *[]ListTagResourcesTag `position:"Query" name:"Tag"  type:"Repeated"`
+	OwnerId              requests.Integer       `position:"Query" name:"OwnerId"`
+	ResourceType         string                 `position:"Query" name:"ResourceType"`
+}
+
+// ListTagResourcesTag is a repeated param struct in ListTagResourcesRequest
+type ListTagResourcesTag struct {
+	Value string `name:"Value"`
+	Key   string `name:"Key"`
+}
+
+// ListTagResourcesResponse is the response struct for api ListTagResources
+type ListTagResourcesResponse struct {
+	*responses.BaseResponse
+	RequestId    string       `json:"RequestId" xml:"RequestId"`
+	NextToken    string       `json:"NextToken" xml:"NextToken"`
+	TagResources TagResources `json:"TagResources" xml:"TagResources"`
+}
+
+// CreateListTagResourcesRequest creates a request to invoke ListTagResources API
+func CreateListTagResourcesRequest() (request *ListTagResourcesRequest) {
+	request = &ListTagResourcesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ListTagResources", "gpdb", "openAPI")
+	return
+}
+
+// CreateListTagResourcesResponse creates a response to parse from ListTagResources response
+func CreateListTagResourcesResponse() (response *ListTagResourcesResponse) {
+	response = &ListTagResourcesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/modify_account_description.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyAccountDescription invokes the gpdb.ModifyAccountDescription API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifyaccountdescription.html
+func (client *Client) ModifyAccountDescription(request *ModifyAccountDescriptionRequest) (response *ModifyAccountDescriptionResponse, err error) {
+	response = CreateModifyAccountDescriptionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyAccountDescriptionWithChan invokes the gpdb.ModifyAccountDescription API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifyaccountdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAccountDescriptionWithChan(request *ModifyAccountDescriptionRequest) (<-chan *ModifyAccountDescriptionResponse, <-chan error) {
+	responseChan := make(chan *ModifyAccountDescriptionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyAccountDescription(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyAccountDescriptionWithCallback invokes the gpdb.ModifyAccountDescription API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifyaccountdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAccountDescriptionWithCallback(request *ModifyAccountDescriptionRequest, callback func(response *ModifyAccountDescriptionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyAccountDescriptionResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyAccountDescription(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyAccountDescriptionRequest is the request struct for api ModifyAccountDescription
+type ModifyAccountDescriptionRequest struct {
+	*requests.RpcRequest
+	AccountName        string `position:"Query" name:"AccountName"`
+	DBInstanceId       string `position:"Query" name:"DBInstanceId"`
+	AccountDescription string `position:"Query" name:"AccountDescription"`
+}
+
+// ModifyAccountDescriptionResponse is the response struct for api ModifyAccountDescription
+type ModifyAccountDescriptionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyAccountDescriptionRequest creates a request to invoke ModifyAccountDescription API
+func CreateModifyAccountDescriptionRequest() (request *ModifyAccountDescriptionRequest) {
+	request = &ModifyAccountDescriptionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyAccountDescription", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyAccountDescriptionResponse creates a response to parse from ModifyAccountDescription response
+func CreateModifyAccountDescriptionResponse() (response *ModifyAccountDescriptionResponse) {
+	response = &ModifyAccountDescriptionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/modify_db_instance_connection_mode.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBInstanceConnectionMode invokes the gpdb.ModifyDBInstanceConnectionMode API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionmode.html
+func (client *Client) ModifyDBInstanceConnectionMode(request *ModifyDBInstanceConnectionModeRequest) (response *ModifyDBInstanceConnectionModeResponse, err error) {
+	response = CreateModifyDBInstanceConnectionModeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBInstanceConnectionModeWithChan invokes the gpdb.ModifyDBInstanceConnectionMode API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionmode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceConnectionModeWithChan(request *ModifyDBInstanceConnectionModeRequest) (<-chan *ModifyDBInstanceConnectionModeResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBInstanceConnectionModeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBInstanceConnectionMode(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBInstanceConnectionModeWithCallback invokes the gpdb.ModifyDBInstanceConnectionMode API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionmode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceConnectionModeWithCallback(request *ModifyDBInstanceConnectionModeRequest, callback func(response *ModifyDBInstanceConnectionModeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBInstanceConnectionModeResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBInstanceConnectionMode(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBInstanceConnectionModeRequest is the request struct for api ModifyDBInstanceConnectionMode
+type ModifyDBInstanceConnectionModeRequest struct {
+	*requests.RpcRequest
+	ConnectionMode string `position:"Query" name:"ConnectionMode"`
+	DBInstanceId   string `position:"Query" name:"DBInstanceId"`
+}
+
+// ModifyDBInstanceConnectionModeResponse is the response struct for api ModifyDBInstanceConnectionMode
+type ModifyDBInstanceConnectionModeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBInstanceConnectionModeRequest creates a request to invoke ModifyDBInstanceConnectionMode API
+func CreateModifyDBInstanceConnectionModeRequest() (request *ModifyDBInstanceConnectionModeRequest) {
+	request = &ModifyDBInstanceConnectionModeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyDBInstanceConnectionMode", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyDBInstanceConnectionModeResponse creates a response to parse from ModifyDBInstanceConnectionMode response
+func CreateModifyDBInstanceConnectionModeResponse() (response *ModifyDBInstanceConnectionModeResponse) {
+	response = &ModifyDBInstanceConnectionModeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/gpdb/modify_db_instance_connection_string.go

@@ -0,0 +1,106 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBInstanceConnectionString invokes the gpdb.ModifyDBInstanceConnectionString API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionstring.html
+func (client *Client) ModifyDBInstanceConnectionString(request *ModifyDBInstanceConnectionStringRequest) (response *ModifyDBInstanceConnectionStringResponse, err error) {
+	response = CreateModifyDBInstanceConnectionStringResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBInstanceConnectionStringWithChan invokes the gpdb.ModifyDBInstanceConnectionString API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionstring.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceConnectionStringWithChan(request *ModifyDBInstanceConnectionStringRequest) (<-chan *ModifyDBInstanceConnectionStringResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBInstanceConnectionStringResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBInstanceConnectionString(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBInstanceConnectionStringWithCallback invokes the gpdb.ModifyDBInstanceConnectionString API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstanceconnectionstring.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceConnectionStringWithCallback(request *ModifyDBInstanceConnectionStringRequest, callback func(response *ModifyDBInstanceConnectionStringResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBInstanceConnectionStringResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBInstanceConnectionString(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBInstanceConnectionStringRequest is the request struct for api ModifyDBInstanceConnectionString
+type ModifyDBInstanceConnectionStringRequest struct {
+	*requests.RpcRequest
+	ConnectionStringPrefix  string `position:"Query" name:"ConnectionStringPrefix"`
+	Port                    string `position:"Query" name:"Port"`
+	DBInstanceId            string `position:"Query" name:"DBInstanceId"`
+	CurrentConnectionString string `position:"Query" name:"CurrentConnectionString"`
+}
+
+// ModifyDBInstanceConnectionStringResponse is the response struct for api ModifyDBInstanceConnectionString
+type ModifyDBInstanceConnectionStringResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBInstanceConnectionStringRequest creates a request to invoke ModifyDBInstanceConnectionString API
+func CreateModifyDBInstanceConnectionStringRequest() (request *ModifyDBInstanceConnectionStringRequest) {
+	request = &ModifyDBInstanceConnectionStringRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyDBInstanceConnectionString", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyDBInstanceConnectionStringResponse creates a response to parse from ModifyDBInstanceConnectionString response
+func CreateModifyDBInstanceConnectionStringResponse() (response *ModifyDBInstanceConnectionStringResponse) {
+	response = &ModifyDBInstanceConnectionStringResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/modify_db_instance_description.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBInstanceDescription invokes the gpdb.ModifyDBInstanceDescription API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancedescription.html
+func (client *Client) ModifyDBInstanceDescription(request *ModifyDBInstanceDescriptionRequest) (response *ModifyDBInstanceDescriptionResponse, err error) {
+	response = CreateModifyDBInstanceDescriptionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBInstanceDescriptionWithChan invokes the gpdb.ModifyDBInstanceDescription API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancedescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceDescriptionWithChan(request *ModifyDBInstanceDescriptionRequest) (<-chan *ModifyDBInstanceDescriptionResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBInstanceDescriptionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBInstanceDescription(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBInstanceDescriptionWithCallback invokes the gpdb.ModifyDBInstanceDescription API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancedescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceDescriptionWithCallback(request *ModifyDBInstanceDescriptionRequest, callback func(response *ModifyDBInstanceDescriptionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBInstanceDescriptionResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBInstanceDescription(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBInstanceDescriptionRequest is the request struct for api ModifyDBInstanceDescription
+type ModifyDBInstanceDescriptionRequest struct {
+	*requests.RpcRequest
+	DBInstanceId          string `position:"Query" name:"DBInstanceId"`
+	DBInstanceDescription string `position:"Query" name:"DBInstanceDescription"`
+}
+
+// ModifyDBInstanceDescriptionResponse is the response struct for api ModifyDBInstanceDescription
+type ModifyDBInstanceDescriptionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBInstanceDescriptionRequest creates a request to invoke ModifyDBInstanceDescription API
+func CreateModifyDBInstanceDescriptionRequest() (request *ModifyDBInstanceDescriptionRequest) {
+	request = &ModifyDBInstanceDescriptionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyDBInstanceDescription", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyDBInstanceDescriptionResponse creates a response to parse from ModifyDBInstanceDescription response
+func CreateModifyDBInstanceDescriptionResponse() (response *ModifyDBInstanceDescriptionResponse) {
+	response = &ModifyDBInstanceDescriptionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/modify_db_instance_maintain_time.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBInstanceMaintainTime invokes the gpdb.ModifyDBInstanceMaintainTime API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancemaintaintime.html
+func (client *Client) ModifyDBInstanceMaintainTime(request *ModifyDBInstanceMaintainTimeRequest) (response *ModifyDBInstanceMaintainTimeResponse, err error) {
+	response = CreateModifyDBInstanceMaintainTimeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBInstanceMaintainTimeWithChan invokes the gpdb.ModifyDBInstanceMaintainTime API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancemaintaintime.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceMaintainTimeWithChan(request *ModifyDBInstanceMaintainTimeRequest) (<-chan *ModifyDBInstanceMaintainTimeResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBInstanceMaintainTimeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBInstanceMaintainTime(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBInstanceMaintainTimeWithCallback invokes the gpdb.ModifyDBInstanceMaintainTime API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancemaintaintime.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceMaintainTimeWithCallback(request *ModifyDBInstanceMaintainTimeRequest, callback func(response *ModifyDBInstanceMaintainTimeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBInstanceMaintainTimeResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBInstanceMaintainTime(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBInstanceMaintainTimeRequest is the request struct for api ModifyDBInstanceMaintainTime
+type ModifyDBInstanceMaintainTimeRequest struct {
+	*requests.RpcRequest
+	EndTime      string `position:"Query" name:"EndTime"`
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+	StartTime    string `position:"Query" name:"StartTime"`
+}
+
+// ModifyDBInstanceMaintainTimeResponse is the response struct for api ModifyDBInstanceMaintainTime
+type ModifyDBInstanceMaintainTimeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBInstanceMaintainTimeRequest creates a request to invoke ModifyDBInstanceMaintainTime API
+func CreateModifyDBInstanceMaintainTimeRequest() (request *ModifyDBInstanceMaintainTimeRequest) {
+	request = &ModifyDBInstanceMaintainTimeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyDBInstanceMaintainTime", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyDBInstanceMaintainTimeResponse creates a response to parse from ModifyDBInstanceMaintainTime response
+func CreateModifyDBInstanceMaintainTimeResponse() (response *ModifyDBInstanceMaintainTimeResponse) {
+	response = &ModifyDBInstanceMaintainTimeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/gpdb/modify_db_instance_network_type.go

@@ -0,0 +1,107 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBInstanceNetworkType invokes the gpdb.ModifyDBInstanceNetworkType API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancenetworktype.html
+func (client *Client) ModifyDBInstanceNetworkType(request *ModifyDBInstanceNetworkTypeRequest) (response *ModifyDBInstanceNetworkTypeResponse, err error) {
+	response = CreateModifyDBInstanceNetworkTypeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBInstanceNetworkTypeWithChan invokes the gpdb.ModifyDBInstanceNetworkType API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancenetworktype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceNetworkTypeWithChan(request *ModifyDBInstanceNetworkTypeRequest) (<-chan *ModifyDBInstanceNetworkTypeResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBInstanceNetworkTypeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBInstanceNetworkType(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBInstanceNetworkTypeWithCallback invokes the gpdb.ModifyDBInstanceNetworkType API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifydbinstancenetworktype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBInstanceNetworkTypeWithCallback(request *ModifyDBInstanceNetworkTypeRequest, callback func(response *ModifyDBInstanceNetworkTypeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBInstanceNetworkTypeResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBInstanceNetworkType(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBInstanceNetworkTypeRequest is the request struct for api ModifyDBInstanceNetworkType
+type ModifyDBInstanceNetworkTypeRequest struct {
+	*requests.RpcRequest
+	VSwitchId           string `position:"Query" name:"VSwitchId"`
+	PrivateIpAddress    string `position:"Query" name:"PrivateIpAddress"`
+	VPCId               string `position:"Query" name:"VPCId"`
+	DBInstanceId        string `position:"Query" name:"DBInstanceId"`
+	InstanceNetworkType string `position:"Query" name:"InstanceNetworkType"`
+}
+
+// ModifyDBInstanceNetworkTypeResponse is the response struct for api ModifyDBInstanceNetworkType
+type ModifyDBInstanceNetworkTypeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBInstanceNetworkTypeRequest creates a request to invoke ModifyDBInstanceNetworkType API
+func CreateModifyDBInstanceNetworkTypeRequest() (request *ModifyDBInstanceNetworkTypeRequest) {
+	request = &ModifyDBInstanceNetworkTypeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifyDBInstanceNetworkType", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifyDBInstanceNetworkTypeResponse creates a response to parse from ModifyDBInstanceNetworkType response
+func CreateModifyDBInstanceNetworkTypeResponse() (response *ModifyDBInstanceNetworkTypeResponse) {
+	response = &ModifyDBInstanceNetworkTypeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/gpdb/modify_security_ips.go

@@ -0,0 +1,106 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifySecurityIps invokes the gpdb.ModifySecurityIps API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysecurityips.html
+func (client *Client) ModifySecurityIps(request *ModifySecurityIpsRequest) (response *ModifySecurityIpsResponse, err error) {
+	response = CreateModifySecurityIpsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifySecurityIpsWithChan invokes the gpdb.ModifySecurityIps API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysecurityips.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifySecurityIpsWithChan(request *ModifySecurityIpsRequest) (<-chan *ModifySecurityIpsResponse, <-chan error) {
+	responseChan := make(chan *ModifySecurityIpsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifySecurityIps(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifySecurityIpsWithCallback invokes the gpdb.ModifySecurityIps API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysecurityips.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifySecurityIpsWithCallback(request *ModifySecurityIpsRequest, callback func(response *ModifySecurityIpsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifySecurityIpsResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifySecurityIps(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifySecurityIpsRequest is the request struct for api ModifySecurityIps
+type ModifySecurityIpsRequest struct {
+	*requests.RpcRequest
+	SecurityIPList             string `position:"Query" name:"SecurityIPList"`
+	DBInstanceIPArrayName      string `position:"Query" name:"DBInstanceIPArrayName"`
+	DBInstanceIPArrayAttribute string `position:"Query" name:"DBInstanceIPArrayAttribute"`
+	DBInstanceId               string `position:"Query" name:"DBInstanceId"`
+}
+
+// ModifySecurityIpsResponse is the response struct for api ModifySecurityIps
+type ModifySecurityIpsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifySecurityIpsRequest creates a request to invoke ModifySecurityIps API
+func CreateModifySecurityIpsRequest() (request *ModifySecurityIpsRequest) {
+	request = &ModifySecurityIpsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifySecurityIps", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifySecurityIpsResponse creates a response to parse from ModifySecurityIps response
+func CreateModifySecurityIpsResponse() (response *ModifySecurityIpsResponse) {
+	response = &ModifySecurityIpsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/modify_sql_collector_policy.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifySQLCollectorPolicy invokes the gpdb.ModifySQLCollectorPolicy API synchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysqlcollectorpolicy.html
+func (client *Client) ModifySQLCollectorPolicy(request *ModifySQLCollectorPolicyRequest) (response *ModifySQLCollectorPolicyResponse, err error) {
+	response = CreateModifySQLCollectorPolicyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifySQLCollectorPolicyWithChan invokes the gpdb.ModifySQLCollectorPolicy API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysqlcollectorpolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifySQLCollectorPolicyWithChan(request *ModifySQLCollectorPolicyRequest) (<-chan *ModifySQLCollectorPolicyResponse, <-chan error) {
+	responseChan := make(chan *ModifySQLCollectorPolicyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifySQLCollectorPolicy(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifySQLCollectorPolicyWithCallback invokes the gpdb.ModifySQLCollectorPolicy API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/modifysqlcollectorpolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifySQLCollectorPolicyWithCallback(request *ModifySQLCollectorPolicyRequest, callback func(response *ModifySQLCollectorPolicyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifySQLCollectorPolicyResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifySQLCollectorPolicy(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifySQLCollectorPolicyRequest is the request struct for api ModifySQLCollectorPolicy
+type ModifySQLCollectorPolicyRequest struct {
+	*requests.RpcRequest
+	SQLCollectorStatus string `position:"Query" name:"SQLCollectorStatus"`
+	DBInstanceId       string `position:"Query" name:"DBInstanceId"`
+}
+
+// ModifySQLCollectorPolicyResponse is the response struct for api ModifySQLCollectorPolicy
+type ModifySQLCollectorPolicyResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifySQLCollectorPolicyRequest creates a request to invoke ModifySQLCollectorPolicy API
+func CreateModifySQLCollectorPolicyRequest() (request *ModifySQLCollectorPolicyRequest) {
+	request = &ModifySQLCollectorPolicyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ModifySQLCollectorPolicy", "gpdb", "openAPI")
+	return
+}
+
+// CreateModifySQLCollectorPolicyResponse creates a response to parse from ModifySQLCollectorPolicy response
+func CreateModifySQLCollectorPolicyResponse() (response *ModifySQLCollectorPolicyResponse) {
+	response = &ModifySQLCollectorPolicyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/release_instance_public_connection.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ReleaseInstancePublicConnection invokes the gpdb.ReleaseInstancePublicConnection API synchronously
+// api document: https://help.aliyun.com/api/gpdb/releaseinstancepublicconnection.html
+func (client *Client) ReleaseInstancePublicConnection(request *ReleaseInstancePublicConnectionRequest) (response *ReleaseInstancePublicConnectionResponse, err error) {
+	response = CreateReleaseInstancePublicConnectionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ReleaseInstancePublicConnectionWithChan invokes the gpdb.ReleaseInstancePublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/releaseinstancepublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseInstancePublicConnectionWithChan(request *ReleaseInstancePublicConnectionRequest) (<-chan *ReleaseInstancePublicConnectionResponse, <-chan error) {
+	responseChan := make(chan *ReleaseInstancePublicConnectionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ReleaseInstancePublicConnection(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ReleaseInstancePublicConnectionWithCallback invokes the gpdb.ReleaseInstancePublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/releaseinstancepublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseInstancePublicConnectionWithCallback(request *ReleaseInstancePublicConnectionRequest, callback func(response *ReleaseInstancePublicConnectionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ReleaseInstancePublicConnectionResponse
+		var err error
+		defer close(result)
+		response, err = client.ReleaseInstancePublicConnection(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ReleaseInstancePublicConnectionRequest is the request struct for api ReleaseInstancePublicConnection
+type ReleaseInstancePublicConnectionRequest struct {
+	*requests.RpcRequest
+	DBInstanceId            string `position:"Query" name:"DBInstanceId"`
+	CurrentConnectionString string `position:"Query" name:"CurrentConnectionString"`
+}
+
+// ReleaseInstancePublicConnectionResponse is the response struct for api ReleaseInstancePublicConnection
+type ReleaseInstancePublicConnectionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateReleaseInstancePublicConnectionRequest creates a request to invoke ReleaseInstancePublicConnection API
+func CreateReleaseInstancePublicConnectionRequest() (request *ReleaseInstancePublicConnectionRequest) {
+	request = &ReleaseInstancePublicConnectionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ReleaseInstancePublicConnection", "gpdb", "openAPI")
+	return
+}
+
+// CreateReleaseInstancePublicConnectionResponse creates a response to parse from ReleaseInstancePublicConnection response
+func CreateReleaseInstancePublicConnectionResponse() (response *ReleaseInstancePublicConnectionResponse) {
+	response = &ReleaseInstancePublicConnectionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/gpdb/reset_account_password.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ResetAccountPassword invokes the gpdb.ResetAccountPassword API synchronously
+// api document: https://help.aliyun.com/api/gpdb/resetaccountpassword.html
+func (client *Client) ResetAccountPassword(request *ResetAccountPasswordRequest) (response *ResetAccountPasswordResponse, err error) {
+	response = CreateResetAccountPasswordResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ResetAccountPasswordWithChan invokes the gpdb.ResetAccountPassword API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/resetaccountpassword.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResetAccountPasswordWithChan(request *ResetAccountPasswordRequest) (<-chan *ResetAccountPasswordResponse, <-chan error) {
+	responseChan := make(chan *ResetAccountPasswordResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ResetAccountPassword(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ResetAccountPasswordWithCallback invokes the gpdb.ResetAccountPassword API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/resetaccountpassword.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResetAccountPasswordWithCallback(request *ResetAccountPasswordRequest, callback func(response *ResetAccountPasswordResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ResetAccountPasswordResponse
+		var err error
+		defer close(result)
+		response, err = client.ResetAccountPassword(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ResetAccountPasswordRequest is the request struct for api ResetAccountPassword
+type ResetAccountPasswordRequest struct {
+	*requests.RpcRequest
+	AccountPassword string `position:"Query" name:"AccountPassword"`
+	AccountName     string `position:"Query" name:"AccountName"`
+	DBInstanceId    string `position:"Query" name:"DBInstanceId"`
+}
+
+// ResetAccountPasswordResponse is the response struct for api ResetAccountPassword
+type ResetAccountPasswordResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateResetAccountPasswordRequest creates a request to invoke ResetAccountPassword API
+func CreateResetAccountPasswordRequest() (request *ResetAccountPasswordRequest) {
+	request = &ResetAccountPasswordRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "ResetAccountPassword", "gpdb", "openAPI")
+	return
+}
+
+// CreateResetAccountPasswordResponse creates a response to parse from ResetAccountPassword response
+func CreateResetAccountPasswordResponse() (response *ResetAccountPasswordResponse) {
+	response = &ResetAccountPasswordResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/gpdb/restart_db_instance.go

@@ -0,0 +1,104 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RestartDBInstance invokes the gpdb.RestartDBInstance API synchronously
+// api document: https://help.aliyun.com/api/gpdb/restartdbinstance.html
+func (client *Client) RestartDBInstance(request *RestartDBInstanceRequest) (response *RestartDBInstanceResponse, err error) {
+	response = CreateRestartDBInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RestartDBInstanceWithChan invokes the gpdb.RestartDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/restartdbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RestartDBInstanceWithChan(request *RestartDBInstanceRequest) (<-chan *RestartDBInstanceResponse, <-chan error) {
+	responseChan := make(chan *RestartDBInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RestartDBInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RestartDBInstanceWithCallback invokes the gpdb.RestartDBInstance API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/restartdbinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RestartDBInstanceWithCallback(request *RestartDBInstanceRequest, callback func(response *RestartDBInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RestartDBInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.RestartDBInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RestartDBInstanceRequest is the request struct for api RestartDBInstance
+type RestartDBInstanceRequest struct {
+	*requests.RpcRequest
+	ClientToken  string `position:"Query" name:"ClientToken"`
+	DBInstanceId string `position:"Query" name:"DBInstanceId"`
+}
+
+// RestartDBInstanceResponse is the response struct for api RestartDBInstance
+type RestartDBInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateRestartDBInstanceRequest creates a request to invoke RestartDBInstance API
+func CreateRestartDBInstanceRequest() (request *RestartDBInstanceRequest) {
+	request = &RestartDBInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "RestartDBInstance", "gpdb", "openAPI")
+	return
+}
+
+// CreateRestartDBInstanceResponse creates a response to parse from RestartDBInstance response
+func CreateRestartDBInstanceResponse() (response *RestartDBInstanceResponse) {
+	response = &RestartDBInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/gpdb/struct_accounts.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Accounts is a nested struct in gpdb response
+type Accounts struct {
+	DBInstanceAccount []DBInstanceAccount `json:"DBInstanceAccount" xml:"DBInstanceAccount"`
+}

+ 38 - 0
services/gpdb/struct_db_instance.go

@@ -0,0 +1,38 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstance is a nested struct in gpdb response
+type DBInstance struct {
+	DBInstanceId          string                    `json:"DBInstanceId" xml:"DBInstanceId"`
+	DBInstanceDescription string                    `json:"DBInstanceDescription" xml:"DBInstanceDescription"`
+	PayType               string                    `json:"PayType" xml:"PayType"`
+	InstanceNetworkType   string                    `json:"InstanceNetworkType" xml:"InstanceNetworkType"`
+	ConnectionMode        string                    `json:"ConnectionMode" xml:"ConnectionMode"`
+	RegionId              string                    `json:"RegionId" xml:"RegionId"`
+	ZoneId                string                    `json:"ZoneId" xml:"ZoneId"`
+	ExpireTime            string                    `json:"ExpireTime" xml:"ExpireTime"`
+	DBInstanceStatus      string                    `json:"DBInstanceStatus" xml:"DBInstanceStatus"`
+	Engine                string                    `json:"Engine" xml:"Engine"`
+	EngineVersion         string                    `json:"EngineVersion" xml:"EngineVersion"`
+	DBInstanceNetType     string                    `json:"DBInstanceNetType" xml:"DBInstanceNetType"`
+	LockMode              string                    `json:"LockMode" xml:"LockMode"`
+	LockReason            string                    `json:"LockReason" xml:"LockReason"`
+	CreateTime            string                    `json:"CreateTime" xml:"CreateTime"`
+	VpcId                 string                    `json:"VpcId" xml:"VpcId"`
+	VSwitchId             string                    `json:"VSwitchId" xml:"VSwitchId"`
+	Tags                  TagsInDescribeDBInstances `json:"Tags" xml:"Tags"`
+}

+ 24 - 0
services/gpdb/struct_db_instance_account.go

@@ -0,0 +1,24 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstanceAccount is a nested struct in gpdb response
+type DBInstanceAccount struct {
+	DBInstanceId       string `json:"DBInstanceId" xml:"DBInstanceId"`
+	AccountName        string `json:"AccountName" xml:"AccountName"`
+	AccountStatus      string `json:"AccountStatus" xml:"AccountStatus"`
+	AccountDescription string `json:"AccountDescription" xml:"AccountDescription"`
+}

+ 53 - 0
services/gpdb/struct_db_instance_attribute.go

@@ -0,0 +1,53 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstanceAttribute is a nested struct in gpdb response
+type DBInstanceAttribute struct {
+	DBInstanceId          string                            `json:"DBInstanceId" xml:"DBInstanceId"`
+	PayType               string                            `json:"PayType" xml:"PayType"`
+	DBInstanceClassType   string                            `json:"DBInstanceClassType" xml:"DBInstanceClassType"`
+	RegionId              string                            `json:"RegionId" xml:"RegionId"`
+	ConnectionString      string                            `json:"ConnectionString" xml:"ConnectionString"`
+	Port                  string                            `json:"Port" xml:"Port"`
+	Engine                string                            `json:"Engine" xml:"Engine"`
+	EngineVersion         string                            `json:"EngineVersion" xml:"EngineVersion"`
+	DBInstanceClass       string                            `json:"DBInstanceClass" xml:"DBInstanceClass"`
+	DBInstanceCpuCores    int                               `json:"DBInstanceCpuCores" xml:"DBInstanceCpuCores"`
+	DBInstanceMemory      int                               `json:"DBInstanceMemory" xml:"DBInstanceMemory"`
+	DBInstanceStorage     int                               `json:"DBInstanceStorage" xml:"DBInstanceStorage"`
+	DBInstanceDiskMBPS    int                               `json:"DBInstanceDiskMBPS" xml:"DBInstanceDiskMBPS"`
+	HostType              string                            `json:"HostType" xml:"HostType"`
+	DBInstanceGroupCount  string                            `json:"DBInstanceGroupCount" xml:"DBInstanceGroupCount"`
+	DBInstanceNetType     string                            `json:"DBInstanceNetType" xml:"DBInstanceNetType"`
+	DBInstanceStatus      string                            `json:"DBInstanceStatus" xml:"DBInstanceStatus"`
+	DBInstanceDescription string                            `json:"DBInstanceDescription" xml:"DBInstanceDescription"`
+	LockMode              string                            `json:"LockMode" xml:"LockMode"`
+	LockReason            string                            `json:"LockReason" xml:"LockReason"`
+	ReadDelayTime         string                            `json:"ReadDelayTime" xml:"ReadDelayTime"`
+	CreationTime          string                            `json:"CreationTime" xml:"CreationTime"`
+	ExpireTime            string                            `json:"ExpireTime" xml:"ExpireTime"`
+	MaintainStartTime     string                            `json:"MaintainStartTime" xml:"MaintainStartTime"`
+	MaintainEndTime       string                            `json:"MaintainEndTime" xml:"MaintainEndTime"`
+	AvailabilityValue     string                            `json:"AvailabilityValue" xml:"AvailabilityValue"`
+	MaxConnections        int                               `json:"MaxConnections" xml:"MaxConnections"`
+	SecurityIPList        string                            `json:"SecurityIPList" xml:"SecurityIPList"`
+	ZoneId                string                            `json:"ZoneId" xml:"ZoneId"`
+	InstanceNetworkType   string                            `json:"InstanceNetworkType" xml:"InstanceNetworkType"`
+	VpcId                 string                            `json:"VpcId" xml:"VpcId"`
+	ConnectionMode        string                            `json:"ConnectionMode" xml:"ConnectionMode"`
+	Tags                  TagsInDescribeDBInstanceAttribute `json:"Tags" xml:"Tags"`
+}

+ 23 - 0
services/gpdb/struct_db_instance_ip_array.go

@@ -0,0 +1,23 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstanceIPArray is a nested struct in gpdb response
+type DBInstanceIPArray struct {
+	DBInstanceIPArrayName      string `json:"DBInstanceIPArrayName" xml:"DBInstanceIPArrayName"`
+	DBInstanceIPArrayAttribute string `json:"DBInstanceIPArrayAttribute" xml:"DBInstanceIPArrayAttribute"`
+	SecurityIPList             string `json:"SecurityIPList" xml:"SecurityIPList"`
+}

+ 26 - 0
services/gpdb/struct_db_instance_net_info.go

@@ -0,0 +1,26 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstanceNetInfo is a nested struct in gpdb response
+type DBInstanceNetInfo struct {
+	ConnectionString string `json:"ConnectionString" xml:"ConnectionString"`
+	IPAddress        string `json:"IPAddress" xml:"IPAddress"`
+	IPType           string `json:"IPType" xml:"IPType"`
+	Port             string `json:"Port" xml:"Port"`
+	VPCId            string `json:"VPCId" xml:"VPCId"`
+	VSwitchId        string `json:"VSwitchId" xml:"VSwitchId"`
+}

+ 21 - 0
services/gpdb/struct_db_instance_net_infos.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBInstanceNetInfos is a nested struct in gpdb response
+type DBInstanceNetInfos struct {
+	DBInstanceNetInfo []DBInstanceNetInfo `json:"DBInstanceNetInfo" xml:"DBInstanceNetInfo"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_db_instance_attribute.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBInstanceAttribute is a nested struct in gpdb response
+type ItemsInDescribeDBInstanceAttribute struct {
+	DBInstanceAttribute []DBInstanceAttribute `json:"DBInstanceAttribute" xml:"DBInstanceAttribute"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_db_instance_ip_array_list.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBInstanceIPArrayList is a nested struct in gpdb response
+type ItemsInDescribeDBInstanceIPArrayList struct {
+	DBInstanceIPArray []DBInstanceIPArray `json:"DBInstanceIPArray" xml:"DBInstanceIPArray"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_db_instances.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBInstances is a nested struct in gpdb response
+type ItemsInDescribeDBInstances struct {
+	DBInstance []DBInstance `json:"DBInstance" xml:"DBInstance"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_slow_log_records.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeSlowLogRecords is a nested struct in gpdb response
+type ItemsInDescribeSlowLogRecords struct {
+	SQLSlowRecord []SQLSlowRecord `json:"SQLSlowRecord" xml:"SQLSlowRecord"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_sql_log_files.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeSQLLogFiles is a nested struct in gpdb response
+type ItemsInDescribeSQLLogFiles struct {
+	LogFile []LogFile `json:"LogFile" xml:"LogFile"`
+}

+ 21 - 0
services/gpdb/struct_items_in_describe_sql_log_records.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeSQLLogRecords is a nested struct in gpdb response
+type ItemsInDescribeSQLLogRecords struct {
+	SQLRecord []SQLRecord `json:"SQLRecord" xml:"SQLRecord"`
+}

+ 26 - 0
services/gpdb/struct_log_file.go

@@ -0,0 +1,26 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// LogFile is a nested struct in gpdb response
+type LogFile struct {
+	FileID         string `json:"FileID" xml:"FileID"`
+	LogStatus      string `json:"LogStatus" xml:"LogStatus"`
+	LogDownloadURL string `json:"LogDownloadURL" xml:"LogDownloadURL"`
+	LogSize        string `json:"LogSize" xml:"LogSize"`
+	LogStartTime   string `json:"LogStartTime" xml:"LogStartTime"`
+	LogEndTime     string `json:"LogEndTime" xml:"LogEndTime"`
+}

+ 21 - 0
services/gpdb/struct_performance_keys.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// PerformanceKeys is a nested struct in gpdb response
+type PerformanceKeys struct {
+	PerformanceKey []string `json:"PerformanceKey" xml:"PerformanceKey"`
+}

+ 22 - 0
services/gpdb/struct_region.go

@@ -0,0 +1,22 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Region is a nested struct in gpdb response
+type Region struct {
+	RegionId string `json:"RegionId" xml:"RegionId"`
+	Zones    Zones  `json:"Zones" xml:"Zones"`
+}

+ 21 - 0
services/gpdb/struct_regions.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Regions is a nested struct in gpdb response
+type Regions struct {
+	Region []Region `json:"Region" xml:"Region"`
+}

+ 28 - 0
services/gpdb/struct_sql_record.go

@@ -0,0 +1,28 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SQLRecord is a nested struct in gpdb response
+type SQLRecord struct {
+	DBName              string `json:"DBName" xml:"DBName"`
+	AccountName         string `json:"AccountName" xml:"AccountName"`
+	HostAddress         string `json:"HostAddress" xml:"HostAddress"`
+	SQLText             string `json:"SQLText" xml:"SQLText"`
+	TotalExecutionTimes int    `json:"TotalExecutionTimes" xml:"TotalExecutionTimes"`
+	ReturnRowCounts     int    `json:"ReturnRowCounts" xml:"ReturnRowCounts"`
+	ExecuteTime         string `json:"ExecuteTime" xml:"ExecuteTime"`
+	ThreadID            string `json:"ThreadID" xml:"ThreadID"`
+}

+ 28 - 0
services/gpdb/struct_sql_slow_record.go

@@ -0,0 +1,28 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SQLSlowRecord is a nested struct in gpdb response
+type SQLSlowRecord struct {
+	HostAddress        string `json:"HostAddress" xml:"HostAddress"`
+	DBName             string `json:"DBName" xml:"DBName"`
+	SQLText            string `json:"SQLText" xml:"SQLText"`
+	QueryTimes         int    `json:"QueryTimes" xml:"QueryTimes"`
+	LockTimes          int    `json:"LockTimes" xml:"LockTimes"`
+	ParseRowCounts     int    `json:"ParseRowCounts" xml:"ParseRowCounts"`
+	ReturnRowCounts    int    `json:"ReturnRowCounts" xml:"ReturnRowCounts"`
+	ExecutionStartTime string `json:"ExecutionStartTime" xml:"ExecutionStartTime"`
+}

+ 22 - 0
services/gpdb/struct_tag.go

@@ -0,0 +1,22 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Tag is a nested struct in gpdb response
+type Tag struct {
+	Key   string `json:"Key" xml:"Key"`
+	Value string `json:"Value" xml:"Value"`
+}

+ 24 - 0
services/gpdb/struct_tag_resource.go

@@ -0,0 +1,24 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagResource is a nested struct in gpdb response
+type TagResource struct {
+	TagKey       string `json:"TagKey" xml:"TagKey"`
+	TagValue     string `json:"TagValue" xml:"TagValue"`
+	ResourceType string `json:"ResourceType" xml:"ResourceType"`
+	ResourceId   string `json:"ResourceId" xml:"ResourceId"`
+}

+ 21 - 0
services/gpdb/struct_tag_resources.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagResources is a nested struct in gpdb response
+type TagResources struct {
+	TagResource []TagResource `json:"TagResource" xml:"TagResource"`
+}

+ 21 - 0
services/gpdb/struct_tags_in_describe_db_instance_attribute.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagsInDescribeDBInstanceAttribute is a nested struct in gpdb response
+type TagsInDescribeDBInstanceAttribute struct {
+	Tag []Tag `json:"Tag" xml:"Tag"`
+}

+ 21 - 0
services/gpdb/struct_tags_in_describe_db_instances.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagsInDescribeDBInstances is a nested struct in gpdb response
+type TagsInDescribeDBInstances struct {
+	Tag []Tag `json:"Tag" xml:"Tag"`
+}

+ 28 - 0
services/gpdb/struct_v_switch.go

@@ -0,0 +1,28 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VSwitch is a nested struct in gpdb response
+type VSwitch struct {
+	GmtCreate   string `json:"GmtCreate" xml:"GmtCreate"`
+	IsDefault   bool   `json:"IsDefault" xml:"IsDefault"`
+	VSwitchId   string `json:"VSwitchId" xml:"VSwitchId"`
+	VSwitchName string `json:"VSwitchName" xml:"VSwitchName"`
+	GmtModified string `json:"GmtModified" xml:"GmtModified"`
+	Status      string `json:"Status" xml:"Status"`
+	CidrBlock   string `json:"CidrBlock" xml:"CidrBlock"`
+	IzNo        string `json:"IzNo" xml:"IzNo"`
+}

+ 21 - 0
services/gpdb/struct_v_switch_in_describe_rds_v_switchs.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VSwitchInDescribeRdsVSwitchs is a nested struct in gpdb response
+type VSwitchInDescribeRdsVSwitchs struct {
+	VSwitchItem []VSwitchItem `json:"VSwitchItem" xml:"VSwitchItem"`
+}

+ 31 - 0
services/gpdb/struct_v_switch_item.go

@@ -0,0 +1,31 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VSwitchItem is a nested struct in gpdb response
+type VSwitchItem struct {
+	VSwitchId   string `json:"VSwitchId" xml:"VSwitchId"`
+	VSwitchName string `json:"VSwitchName" xml:"VSwitchName"`
+	IzNo        string `json:"IzNo" xml:"IzNo"`
+	Bid         string `json:"Bid" xml:"Bid"`
+	AliUid      string `json:"AliUid" xml:"AliUid"`
+	RegionNo    string `json:"RegionNo" xml:"RegionNo"`
+	CidrBlock   string `json:"CidrBlock" xml:"CidrBlock"`
+	IsDefault   bool   `json:"IsDefault" xml:"IsDefault"`
+	Status      string `json:"Status" xml:"Status"`
+	GmtCreate   string `json:"GmtCreate" xml:"GmtCreate"`
+	GmtModified string `json:"GmtModified" xml:"GmtModified"`
+}

+ 21 - 0
services/gpdb/struct_v_switches.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VSwitches is a nested struct in gpdb response
+type VSwitches struct {
+	VSwitch []VSwitchItem `json:"VSwitch" xml:"VSwitch"`
+}

+ 21 - 0
services/gpdb/struct_v_switchs.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VSwitchs is a nested struct in gpdb response
+type VSwitchs struct {
+	VSwitch []VSwitch `json:"VSwitch" xml:"VSwitch"`
+}

+ 21 - 0
services/gpdb/struct_vpc.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Vpc is a nested struct in gpdb response
+type Vpc struct {
+	VpcItem []VpcItem `json:"VpcItem" xml:"VpcItem"`
+}

+ 31 - 0
services/gpdb/struct_vpc_item.go

@@ -0,0 +1,31 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// VpcItem is a nested struct in gpdb response
+type VpcItem struct {
+	VpcId       string    `json:"VpcId" xml:"VpcId"`
+	VpcName     string    `json:"VpcName" xml:"VpcName"`
+	Bid         string    `json:"Bid" xml:"Bid"`
+	AliUid      string    `json:"AliUid" xml:"AliUid"`
+	RegionNo    string    `json:"RegionNo" xml:"RegionNo"`
+	CidrBlock   string    `json:"CidrBlock" xml:"CidrBlock"`
+	IsDefault   bool      `json:"IsDefault" xml:"IsDefault"`
+	Status      string    `json:"Status" xml:"Status"`
+	GmtCreate   string    `json:"GmtCreate" xml:"GmtCreate"`
+	GmtModified string    `json:"GmtModified" xml:"GmtModified"`
+	VSwitchs    []VSwitch `json:"VSwitchs" xml:"VSwitchs"`
+}

+ 21 - 0
services/gpdb/struct_vpcs.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Vpcs is a nested struct in gpdb response
+type Vpcs struct {
+	Vpc []VpcItem `json:"Vpc" xml:"Vpc"`
+}

+ 22 - 0
services/gpdb/struct_zone.go

@@ -0,0 +1,22 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Zone is a nested struct in gpdb response
+type Zone struct {
+	ZoneId     string `json:"ZoneId" xml:"ZoneId"`
+	VpcEnabled bool   `json:"VpcEnabled" xml:"VpcEnabled"`
+}

+ 21 - 0
services/gpdb/struct_zones.go

@@ -0,0 +1,21 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Zones is a nested struct in gpdb response
+type Zones struct {
+	Zone []Zone `json:"Zone" xml:"Zone"`
+}

+ 105 - 0
services/gpdb/switch_db_instance_net_type.go

@@ -0,0 +1,105 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// SwitchDBInstanceNetType invokes the gpdb.SwitchDBInstanceNetType API synchronously
+// api document: https://help.aliyun.com/api/gpdb/switchdbinstancenettype.html
+func (client *Client) SwitchDBInstanceNetType(request *SwitchDBInstanceNetTypeRequest) (response *SwitchDBInstanceNetTypeResponse, err error) {
+	response = CreateSwitchDBInstanceNetTypeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SwitchDBInstanceNetTypeWithChan invokes the gpdb.SwitchDBInstanceNetType API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/switchdbinstancenettype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SwitchDBInstanceNetTypeWithChan(request *SwitchDBInstanceNetTypeRequest) (<-chan *SwitchDBInstanceNetTypeResponse, <-chan error) {
+	responseChan := make(chan *SwitchDBInstanceNetTypeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SwitchDBInstanceNetType(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SwitchDBInstanceNetTypeWithCallback invokes the gpdb.SwitchDBInstanceNetType API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/switchdbinstancenettype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SwitchDBInstanceNetTypeWithCallback(request *SwitchDBInstanceNetTypeRequest, callback func(response *SwitchDBInstanceNetTypeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SwitchDBInstanceNetTypeResponse
+		var err error
+		defer close(result)
+		response, err = client.SwitchDBInstanceNetType(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SwitchDBInstanceNetTypeRequest is the request struct for api SwitchDBInstanceNetType
+type SwitchDBInstanceNetTypeRequest struct {
+	*requests.RpcRequest
+	ConnectionStringPrefix string `position:"Query" name:"ConnectionStringPrefix"`
+	Port                   string `position:"Query" name:"Port"`
+	DBInstanceId           string `position:"Query" name:"DBInstanceId"`
+}
+
+// SwitchDBInstanceNetTypeResponse is the response struct for api SwitchDBInstanceNetType
+type SwitchDBInstanceNetTypeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateSwitchDBInstanceNetTypeRequest creates a request to invoke SwitchDBInstanceNetType API
+func CreateSwitchDBInstanceNetTypeRequest() (request *SwitchDBInstanceNetTypeRequest) {
+	request = &SwitchDBInstanceNetTypeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "SwitchDBInstanceNetType", "gpdb", "openAPI")
+	return
+}
+
+// CreateSwitchDBInstanceNetTypeResponse creates a response to parse from SwitchDBInstanceNetType response
+func CreateSwitchDBInstanceNetTypeResponse() (response *SwitchDBInstanceNetTypeResponse) {
+	response = &SwitchDBInstanceNetTypeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/gpdb/tag_resources.go

@@ -0,0 +1,115 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// TagResources invokes the gpdb.TagResources API synchronously
+// api document: https://help.aliyun.com/api/gpdb/tagresources.html
+func (client *Client) TagResources(request *TagResourcesRequest) (response *TagResourcesResponse, err error) {
+	response = CreateTagResourcesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// TagResourcesWithChan invokes the gpdb.TagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/tagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) TagResourcesWithChan(request *TagResourcesRequest) (<-chan *TagResourcesResponse, <-chan error) {
+	responseChan := make(chan *TagResourcesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.TagResources(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// TagResourcesWithCallback invokes the gpdb.TagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/tagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) TagResourcesWithCallback(request *TagResourcesRequest, callback func(response *TagResourcesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *TagResourcesResponse
+		var err error
+		defer close(result)
+		response, err = client.TagResources(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// TagResourcesRequest is the request struct for api TagResources
+type TagResourcesRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer   `position:"Query" name:"ResourceOwnerId"`
+	ResourceId           *[]string          `position:"Query" name:"ResourceId"  type:"Repeated"`
+	ResourceOwnerAccount string             `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string             `position:"Query" name:"OwnerAccount"`
+	Tag                  *[]TagResourcesTag `position:"Query" name:"Tag"  type:"Repeated"`
+	OwnerId              requests.Integer   `position:"Query" name:"OwnerId"`
+	ResourceType         string             `position:"Query" name:"ResourceType"`
+}
+
+// TagResourcesTag is a repeated param struct in TagResourcesRequest
+type TagResourcesTag struct {
+	Value string `name:"Value"`
+	Key   string `name:"Key"`
+}
+
+// TagResourcesResponse is the response struct for api TagResources
+type TagResourcesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateTagResourcesRequest creates a request to invoke TagResources API
+func CreateTagResourcesRequest() (request *TagResourcesRequest) {
+	request = &TagResourcesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "TagResources", "gpdb", "openAPI")
+	return
+}
+
+// CreateTagResourcesResponse creates a response to parse from TagResources response
+func CreateTagResourcesResponse() (response *TagResourcesResponse) {
+	response = &TagResourcesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/gpdb/untag_resources.go

@@ -0,0 +1,110 @@
+package gpdb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// UntagResources invokes the gpdb.UntagResources API synchronously
+// api document: https://help.aliyun.com/api/gpdb/untagresources.html
+func (client *Client) UntagResources(request *UntagResourcesRequest) (response *UntagResourcesResponse, err error) {
+	response = CreateUntagResourcesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UntagResourcesWithChan invokes the gpdb.UntagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/untagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UntagResourcesWithChan(request *UntagResourcesRequest) (<-chan *UntagResourcesResponse, <-chan error) {
+	responseChan := make(chan *UntagResourcesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UntagResources(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UntagResourcesWithCallback invokes the gpdb.UntagResources API asynchronously
+// api document: https://help.aliyun.com/api/gpdb/untagresources.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UntagResourcesWithCallback(request *UntagResourcesRequest, callback func(response *UntagResourcesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UntagResourcesResponse
+		var err error
+		defer close(result)
+		response, err = client.UntagResources(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UntagResourcesRequest is the request struct for api UntagResources
+type UntagResourcesRequest struct {
+	*requests.RpcRequest
+	All                  requests.Boolean `position:"Query" name:"All"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceId           *[]string        `position:"Query" name:"ResourceId"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	TagKey               *[]string        `position:"Query" name:"TagKey"  type:"Repeated"`
+	ResourceType         string           `position:"Query" name:"ResourceType"`
+}
+
+// UntagResourcesResponse is the response struct for api UntagResources
+type UntagResourcesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateUntagResourcesRequest creates a request to invoke UntagResources API
+func CreateUntagResourcesRequest() (request *UntagResourcesRequest) {
+	request = &UntagResourcesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("gpdb", "2016-05-03", "UntagResources", "gpdb", "openAPI")
+	return
+}
+
+// CreateUntagResourcesResponse creates a response to parse from UntagResources response
+func CreateUntagResourcesResponse() (response *UntagResourcesResponse) {
+	response = &UntagResourcesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}