From a96a12ecf187e02b1c135ddee0e320f5d35d0875 Mon Sep 17 00:00:00 2001 From: "Wang , Deng Ke" Date: Mon, 14 Nov 2022 16:40:26 +0000 Subject: [PATCH] openGauss API 20221109 version Reviewed-by: gtema Co-authored-by: Wang , Deng Ke Co-committed-by: Wang , Deng Ke --- docs/opengauss/api-ref/.placeholder | 0 docs/opengauss/api-ref/ALL_META.TXT.json | 302 ++++ docs/opengauss/api-ref/CLASS.TXT.json | 272 ++++ docs/opengauss/api-ref/PARAMETERS.txt | 3 + .../api-ref/en-us_image_0000001072599100.jpg | Bin 0 -> 139826 bytes .../api-ref/en-us_image_0000001072791022.gif | Bin 0 -> 51895 bytes .../opengauss/api-ref/opengauss_api_0001.html | 19 + .../opengauss/api-ref/opengauss_api_0002.html | 12 + .../opengauss/api-ref/opengauss_api_0003.html | 11 + .../opengauss/api-ref/opengauss_api_0004.html | 11 + .../opengauss/api-ref/opengauss_api_0005.html | 11 + .../opengauss/api-ref/opengauss_api_0006.html | 19 + .../opengauss/api-ref/opengauss_api_0007.html | 35 + .../opengauss/api-ref/opengauss_api_0012.html | 9 + .../opengauss/api-ref/opengauss_api_0013.html | 15 + .../opengauss/api-ref/opengauss_api_0014.html | 29 + .../opengauss/api-ref/opengauss_api_0015.html | 774 ++++++++++ .../opengauss/api-ref/opengauss_api_0016.html | 131 ++ .../opengauss/api-ref/opengauss_api_0017.html | 75 + .../opengauss/api-ref/opengauss_api_0018.html | 1309 +++++++++++++++++ .../opengauss/api-ref/opengauss_api_0019.html | 172 +++ .../opengauss/api-ref/opengauss_api_0020.html | 130 ++ .../opengauss/api-ref/opengauss_api_0021.html | 85 ++ .../opengauss/api-ref/opengauss_api_0022.html | 105 ++ .../opengauss/api-ref/opengauss_api_0023.html | 15 + .../opengauss/api-ref/opengauss_api_0024.html | 140 ++ .../opengauss/api-ref/opengauss_api_0025.html | 19 + .../opengauss/api-ref/opengauss_api_0026.html | 148 ++ .../opengauss/api-ref/opengauss_api_0030.html | 21 + .../opengauss/api-ref/opengauss_api_0031.html | 42 + .../opengauss/api-ref/opengauss_api_0032.html | 328 +++++ .../opengauss/api-ref/opengauss_api_0033.html | 968 ++++++++++++ .../opengauss/api-ref/opengauss_api_0034.html | 16 + .../opengauss/api-ref/opengauss_api_0036.html | 30 + .../opengauss/api-ref/opengauss_api_0037.html | 59 + .../opengauss/api-ref/opengauss_api_0038.html | 20 + .../public_sys-resources/ExpandCollapse.js | 1 + .../caution_3.0-en-us.png | Bin 0 -> 2752 bytes .../public_sys-resources/commonltr.css | 1 + .../public_sys-resources/commonltr_print.css | 1 + .../public_sys-resources/commonrtl.css | 2 + .../public_sys-resources/danger_3.0-en-us.png | Bin 0 -> 2771 bytes .../api-ref/public_sys-resources/delta.gif | Bin 0 -> 836 bytes .../api-ref/public_sys-resources/deltaend.gif | Bin 0 -> 834 bytes .../public_sys-resources/icon-arrowdn.gif | Bin 0 -> 68 bytes .../public_sys-resources/icon-arrowrt.gif | Bin 0 -> 70 bytes .../public_sys-resources/icon-caution.gif | Bin 0 -> 1086 bytes .../public_sys-resources/icon-danger.gif | Bin 0 -> 1086 bytes .../public_sys-resources/icon-huawei.gif | Bin 0 -> 2767 bytes .../public_sys-resources/icon-note.gif | Bin 0 -> 983 bytes .../public_sys-resources/icon-notice.gif | Bin 0 -> 962 bytes .../api-ref/public_sys-resources/icon-tip.gif | Bin 0 -> 879 bytes .../public_sys-resources/icon-warning.gif | Bin 0 -> 1086 bytes .../public_sys-resources/note_3.0-en-us.png | Bin 0 -> 1080 bytes .../public_sys-resources/notice_3.0-en-us.png | Bin 0 -> 1672 bytes .../api-ref/public_sys-resources/popup.js | 1 + .../warning_3.0-en-us.png | Bin 0 -> 3164 bytes 57 files changed, 5341 insertions(+) delete mode 100644 docs/opengauss/api-ref/.placeholder create mode 100644 docs/opengauss/api-ref/ALL_META.TXT.json create mode 100644 docs/opengauss/api-ref/CLASS.TXT.json create mode 100644 docs/opengauss/api-ref/PARAMETERS.txt create mode 100644 docs/opengauss/api-ref/en-us_image_0000001072599100.jpg create mode 100644 docs/opengauss/api-ref/en-us_image_0000001072791022.gif create mode 100644 docs/opengauss/api-ref/opengauss_api_0001.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0002.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0003.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0004.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0005.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0006.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0007.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0012.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0013.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0014.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0015.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0016.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0017.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0018.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0019.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0020.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0021.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0022.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0023.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0024.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0025.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0026.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0030.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0031.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0032.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0033.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0034.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0036.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0037.html create mode 100644 docs/opengauss/api-ref/opengauss_api_0038.html create mode 100644 docs/opengauss/api-ref/public_sys-resources/ExpandCollapse.js create mode 100644 docs/opengauss/api-ref/public_sys-resources/caution_3.0-en-us.png create mode 100644 docs/opengauss/api-ref/public_sys-resources/commonltr.css create mode 100644 docs/opengauss/api-ref/public_sys-resources/commonltr_print.css create mode 100644 docs/opengauss/api-ref/public_sys-resources/commonrtl.css create mode 100644 docs/opengauss/api-ref/public_sys-resources/danger_3.0-en-us.png create mode 100644 docs/opengauss/api-ref/public_sys-resources/delta.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/deltaend.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-arrowdn.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-arrowrt.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-caution.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-danger.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-huawei.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-note.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-notice.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-tip.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/icon-warning.gif create mode 100644 docs/opengauss/api-ref/public_sys-resources/note_3.0-en-us.png create mode 100644 docs/opengauss/api-ref/public_sys-resources/notice_3.0-en-us.png create mode 100644 docs/opengauss/api-ref/public_sys-resources/popup.js create mode 100644 docs/opengauss/api-ref/public_sys-resources/warning_3.0-en-us.png diff --git a/docs/opengauss/api-ref/.placeholder b/docs/opengauss/api-ref/.placeholder deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/opengauss/api-ref/ALL_META.TXT.json b/docs/opengauss/api-ref/ALL_META.TXT.json new file mode 100644 index 000000000..2d4220526 --- /dev/null +++ b/docs/opengauss/api-ref/ALL_META.TXT.json @@ -0,0 +1,302 @@ +[ + { + "uri":"opengauss_api_0001.html", + "product_code":"opengauss", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Before You Start", + "title":"Before You Start", + "githuburl":"" + }, + { + "uri":"opengauss_api_0002.html", + "product_code":"opengauss", + "code":"2", + "des":"Welcome to GaussDB(openGauss) API Reference. GaussDB(openGauss) is a next-generation, enterprise-class distributed database. It is designed based on the shared-nothing ar", + "doc_type":"api", + "kw":"Overview,Before You Start,API Reference", + "title":"Overview", + "githuburl":"" + }, + { + "uri":"opengauss_api_0003.html", + "product_code":"opengauss", + "code":"3", + "des":"GaussDB(openGauss) supports Representational State Transfer (REST) APIs, allowing you to call APIs using HTTPS. For details about API calling, see API Overview.", + "doc_type":"api", + "kw":"API Calling,Before You Start,API Reference", + "title":"API Calling", + "githuburl":"" + }, + { + "uri":"opengauss_api_0004.html", + "product_code":"opengauss", + "code":"4", + "des":"An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, see Regions and Endpoints.", + "doc_type":"api", + "kw":"Endpoints,Before You Start,API Reference", + "title":"Endpoints", + "githuburl":"" + }, + { + "uri":"opengauss_api_0005.html", + "product_code":"opengauss", + "code":"5", + "des":"For more constraints, see API description.", + "doc_type":"api", + "kw":"Constraints,Before You Start,API Reference", + "title":"Constraints", + "githuburl":"" + }, + { + "uri":"opengauss_api_0006.html", + "product_code":"opengauss", + "code":"6", + "des":"DomainA domain is created upon successful registration. The domain has full access permissions for all of its cloud services and resources. It can be used to reset user p", + "doc_type":"api", + "kw":"Concepts,Before You Start,API Reference", + "title":"Concepts", + "githuburl":"" + }, + { + "uri":"opengauss_api_0007.html", + "product_code":"opengauss", + "code":"7", + "des":"GaussDB(openGauss) APIs enable you to use all GaussDB(openGauss) functions, including creating/deleting DB instances and scaling up instance storage space.", + "doc_type":"api", + "kw":"API Overview,API Reference", + "title":"API Overview", + "githuburl":"" + }, + { + "uri":"opengauss_api_0012.html", + "product_code":"opengauss", + "code":"8", + "des":"Public cloud APIs comply with the RESTful API design principles. REST-based web services are organized into resources. Each resource is identified by one or more Uniform ", + "doc_type":"api", + "kw":"Using APIs,API Reference", + "title":"Using APIs", + "githuburl":"" + }, + { + "uri":"opengauss_api_0013.html", + "product_code":"opengauss", + "code":"9", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"API", + "title":"API", + "githuburl":"" + }, + { + "uri":"opengauss_api_0014.html", + "product_code":"opengauss", + "code":"10", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"DB Instance Management", + "title":"DB Instance Management", + "githuburl":"" + }, + { + "uri":"opengauss_api_0015.html", + "product_code":"opengauss", + "code":"11", + "des":"This API is used to create a GaussDB(openGauss) DB instance. GaussDB(openGauss) supports distributed instances.Before calling an API, you need to understand the API in Us", + "doc_type":"api", + "kw":"Creating a DB Instance,DB Instance Management,API Reference", + "title":"Creating a DB Instance", + "githuburl":"" + }, + { + "uri":"opengauss_api_0016.html", + "product_code":"opengauss", + "code":"12", + "des":"This API is used to scale up storage space of a DB instance.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the requir", + "doc_type":"api", + "kw":"Scaling Up Storage Space of a DB Instance,DB Instance Management,API Reference", + "title":"Scaling Up Storage Space of a DB Instance", + "githuburl":"" + }, + { + "uri":"opengauss_api_0017.html", + "product_code":"opengauss", + "code":"13", + "des":"This API is used to delete a DB instance.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpo", + "doc_type":"api", + "kw":"Deleting a DB Instance,DB Instance Management,API Reference", + "title":"Deleting a DB Instance", + "githuburl":"" + }, + { + "uri":"opengauss_api_0018.html", + "product_code":"opengauss", + "code":"14", + "des":"This API is used to query DB instances according to search criteria.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain th", + "doc_type":"api", + "kw":"Querying Details About DB Instances,DB Instance Management,API Reference", + "title":"Querying Details About DB Instances", + "githuburl":"" + }, + { + "uri":"opengauss_api_0019.html", + "product_code":"opengauss", + "code":"15", + "des":"This API is used to add CNs.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpoint.The CN gr", + "doc_type":"api", + "kw":"Adding CNs,DB Instance Management,API Reference", + "title":"Adding CNs", + "githuburl":"" + }, + { + "uri":"opengauss_api_0020.html", + "product_code":"opengauss", + "code":"16", + "des":"This API is used to add shards.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpoint.Interm", + "doc_type":"api", + "kw":"Adding Shards,DB Instance Management,API Reference", + "title":"Adding Shards", + "githuburl":"" + }, + { + "uri":"opengauss_api_0021.html", + "product_code":"opengauss", + "code":"17", + "des":"This API is used to reset a database password.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and ", + "doc_type":"api", + "kw":"Resetting a Database Password,DB Instance Management,API Reference", + "title":"Resetting a Database Password", + "githuburl":"" + }, + { + "uri":"opengauss_api_0022.html", + "product_code":"opengauss", + "code":"18", + "des":"This API is used to change a DB instance name.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and ", + "doc_type":"api", + "kw":"Modifying a DB Instance Name,DB Instance Management,API Reference", + "title":"Modifying a DB Instance Name", + "githuburl":"" + }, + { + "uri":"opengauss_api_0023.html", + "product_code":"opengauss", + "code":"19", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Parameter Configuration", + "title":"Parameter Configuration", + "githuburl":"" + }, + { + "uri":"opengauss_api_0024.html", + "product_code":"opengauss", + "code":"20", + "des":"This API is used to modify parameters in the parameter template of a specified DB instance.Before calling an API, you need to understand the API in Using APIs.Before call", + "doc_type":"api", + "kw":"Modifying Parameters of a Specified DB Instance,Parameter Configuration,API Reference", + "title":"Modifying Parameters of a Specified DB Instance", + "githuburl":"" + }, + { + "uri":"opengauss_api_0025.html", + "product_code":"opengauss", + "code":"21", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Backup Management", + "title":"Backup Management", + "githuburl":"" + }, + { + "uri":"opengauss_api_0026.html", + "product_code":"opengauss", + "code":"22", + "des":"This API is used to set an automated backup policy.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region", + "doc_type":"api", + "kw":"Setting an Automated Backup Policy,Backup Management,API Reference", + "title":"Setting an Automated Backup Policy", + "githuburl":"" + }, + { + "uri":"opengauss_api_0030.html", + "product_code":"opengauss", + "code":"23", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Appendix", + "title":"Appendix", + "githuburl":"" + }, + { + "uri":"opengauss_api_0031.html", + "product_code":"opengauss", + "code":"24", + "des":"Abnormal response descriptionAbnormal response descriptionNameTypeDescriptionerror_codeStringSpecifies the error returned when a task submission exception occurs.error_ms", + "doc_type":"api", + "kw":"Abnormal Request Results,Appendix,API Reference", + "title":"Abnormal Request Results", + "githuburl":"" + }, + { + "uri":"opengauss_api_0032.html", + "product_code":"opengauss", + "code":"25", + "des":"Table 1 describes status codes.", + "doc_type":"api", + "kw":"Status Codes,Appendix,API Reference", + "title":"Status Codes", + "githuburl":"" + }, + { + "uri":"opengauss_api_0033.html", + "product_code":"opengauss", + "code":"26", + "des":"The following table describes error codes.", + "doc_type":"api", + "kw":"Error Codes,Appendix,API Reference", + "title":"Error Codes", + "githuburl":"" + }, + { + "uri":"opengauss_api_0034.html", + "product_code":"opengauss", + "code":"27", + "des":"When calling APIs, you need to specify the project ID in some URLs. To do so, you need to obtain the project ID first.On the My Credential page, view project IDs in the p", + "doc_type":"api", + "kw":"Obtaining a Project ID,Appendix,API Reference", + "title":"Obtaining a Project ID", + "githuburl":"" + }, + { + "uri":"opengauss_api_0036.html", + "product_code":"opengauss", + "code":"28", + "des":"Replication mode table", + "doc_type":"api", + "kw":"Replication Mode Table,Appendix,API Reference", + "title":"Replication Mode Table", + "githuburl":"" + }, + { + "uri":"opengauss_api_0037.html", + "product_code":"opengauss", + "code":"29", + "des":"This section describes the GaussDB(openGauss) DB instance class.", + "doc_type":"api", + "kw":"DB Instance Class,Appendix,API Reference", + "title":"DB Instance Class", + "githuburl":"" + }, + { + "uri":"opengauss_api_0038.html", + "product_code":"opengauss", + "code":"30", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Change History,API Reference", + "title":"Change History", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/opengauss/api-ref/CLASS.TXT.json b/docs/opengauss/api-ref/CLASS.TXT.json new file mode 100644 index 000000000..488d31b16 --- /dev/null +++ b/docs/opengauss/api-ref/CLASS.TXT.json @@ -0,0 +1,272 @@ +[ + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"Before You Start", + "uri":"opengauss_api_0001.html", + "doc_type":"api", + "p_code":"", + "code":"1" + }, + { + "desc":"Welcome to GaussDB(openGauss) API Reference. GaussDB(openGauss) is a next-generation, enterprise-class distributed database. It is designed based on the shared-nothing ar", + "product_code":"opengauss", + "title":"Overview", + "uri":"opengauss_api_0002.html", + "doc_type":"api", + "p_code":"1", + "code":"2" + }, + { + "desc":"GaussDB(openGauss) supports Representational State Transfer (REST) APIs, allowing you to call APIs using HTTPS. For details about API calling, see API Overview.", + "product_code":"opengauss", + "title":"API Calling", + "uri":"opengauss_api_0003.html", + "doc_type":"api", + "p_code":"1", + "code":"3" + }, + { + "desc":"An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, see Regions and Endpoints.", + "product_code":"opengauss", + "title":"Endpoints", + "uri":"opengauss_api_0004.html", + "doc_type":"api", + "p_code":"1", + "code":"4" + }, + { + "desc":"For more constraints, see API description.", + "product_code":"opengauss", + "title":"Constraints", + "uri":"opengauss_api_0005.html", + "doc_type":"api", + "p_code":"1", + "code":"5" + }, + { + "desc":"DomainA domain is created upon successful registration. The domain has full access permissions for all of its cloud services and resources. It can be used to reset user p", + "product_code":"opengauss", + "title":"Concepts", + "uri":"opengauss_api_0006.html", + "doc_type":"api", + "p_code":"1", + "code":"6" + }, + { + "desc":"GaussDB(openGauss) APIs enable you to use all GaussDB(openGauss) functions, including creating/deleting DB instances and scaling up instance storage space.", + "product_code":"opengauss", + "title":"API Overview", + "uri":"opengauss_api_0007.html", + "doc_type":"api", + "p_code":"", + "code":"7" + }, + { + "desc":"Public cloud APIs comply with the RESTful API design principles. REST-based web services are organized into resources. Each resource is identified by one or more Uniform ", + "product_code":"opengauss", + "title":"Using APIs", + "uri":"opengauss_api_0012.html", + "doc_type":"api", + "p_code":"", + "code":"8" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"API", + "uri":"opengauss_api_0013.html", + "doc_type":"api", + "p_code":"", + "code":"9" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"DB Instance Management", + "uri":"opengauss_api_0014.html", + "doc_type":"api", + "p_code":"9", + "code":"10" + }, + { + "desc":"This API is used to create a GaussDB(openGauss) DB instance. GaussDB(openGauss) supports distributed instances.Before calling an API, you need to understand the API in Us", + "product_code":"opengauss", + "title":"Creating a DB Instance", + "uri":"opengauss_api_0015.html", + "doc_type":"api", + "p_code":"10", + "code":"11" + }, + { + "desc":"This API is used to scale up storage space of a DB instance.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the requir", + "product_code":"opengauss", + "title":"Scaling Up Storage Space of a DB Instance", + "uri":"opengauss_api_0016.html", + "doc_type":"api", + "p_code":"10", + "code":"12" + }, + { + "desc":"This API is used to delete a DB instance.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpo", + "product_code":"opengauss", + "title":"Deleting a DB Instance", + "uri":"opengauss_api_0017.html", + "doc_type":"api", + "p_code":"10", + "code":"13" + }, + { + "desc":"This API is used to query DB instances according to search criteria.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain th", + "product_code":"opengauss", + "title":"Querying Details About DB Instances", + "uri":"opengauss_api_0018.html", + "doc_type":"api", + "p_code":"10", + "code":"14" + }, + { + "desc":"This API is used to add CNs.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpoint.The CN gr", + "product_code":"opengauss", + "title":"Adding CNs", + "uri":"opengauss_api_0019.html", + "doc_type":"api", + "p_code":"10", + "code":"15" + }, + { + "desc":"This API is used to add shards.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and endpoint.Interm", + "product_code":"opengauss", + "title":"Adding Shards", + "uri":"opengauss_api_0020.html", + "doc_type":"api", + "p_code":"10", + "code":"16" + }, + { + "desc":"This API is used to reset a database password.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and ", + "product_code":"opengauss", + "title":"Resetting a Database Password", + "uri":"opengauss_api_0021.html", + "doc_type":"api", + "p_code":"10", + "code":"17" + }, + { + "desc":"This API is used to change a DB instance name.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region and ", + "product_code":"opengauss", + "title":"Modifying a DB Instance Name", + "uri":"opengauss_api_0022.html", + "doc_type":"api", + "p_code":"10", + "code":"18" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"Parameter Configuration", + "uri":"opengauss_api_0023.html", + "doc_type":"api", + "p_code":"9", + "code":"19" + }, + { + "desc":"This API is used to modify parameters in the parameter template of a specified DB instance.Before calling an API, you need to understand the API in Using APIs.Before call", + "product_code":"opengauss", + "title":"Modifying Parameters of a Specified DB Instance", + "uri":"opengauss_api_0024.html", + "doc_type":"api", + "p_code":"19", + "code":"20" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"Backup Management", + "uri":"opengauss_api_0025.html", + "doc_type":"api", + "p_code":"9", + "code":"21" + }, + { + "desc":"This API is used to set an automated backup policy.Before calling an API, you need to understand the API in Using APIs.Before calling this API, obtain the required region", + "product_code":"opengauss", + "title":"Setting an Automated Backup Policy", + "uri":"opengauss_api_0026.html", + "doc_type":"api", + "p_code":"21", + "code":"22" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"Appendix", + "uri":"opengauss_api_0030.html", + "doc_type":"api", + "p_code":"", + "code":"23" + }, + { + "desc":"Abnormal response descriptionAbnormal response descriptionNameTypeDescriptionerror_codeStringSpecifies the error returned when a task submission exception occurs.error_ms", + "product_code":"opengauss", + "title":"Abnormal Request Results", + "uri":"opengauss_api_0031.html", + "doc_type":"api", + "p_code":"23", + "code":"24" + }, + { + "desc":"Table 1 describes status codes.", + "product_code":"opengauss", + "title":"Status Codes", + "uri":"opengauss_api_0032.html", + "doc_type":"api", + "p_code":"23", + "code":"25" + }, + { + "desc":"The following table describes error codes.", + "product_code":"opengauss", + "title":"Error Codes", + "uri":"opengauss_api_0033.html", + "doc_type":"api", + "p_code":"23", + "code":"26" + }, + { + "desc":"When calling APIs, you need to specify the project ID in some URLs. To do so, you need to obtain the project ID first.On the My Credential page, view project IDs in the p", + "product_code":"opengauss", + "title":"Obtaining a Project ID", + "uri":"opengauss_api_0034.html", + "doc_type":"api", + "p_code":"23", + "code":"27" + }, + { + "desc":"Replication mode table", + "product_code":"opengauss", + "title":"Replication Mode Table", + "uri":"opengauss_api_0036.html", + "doc_type":"api", + "p_code":"23", + "code":"28" + }, + { + "desc":"This section describes the GaussDB(openGauss) DB instance class.", + "product_code":"opengauss", + "title":"DB Instance Class", + "uri":"opengauss_api_0037.html", + "doc_type":"api", + "p_code":"23", + "code":"29" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"opengauss", + "title":"Change History", + "uri":"opengauss_api_0038.html", + "doc_type":"api", + "p_code":"", + "code":"30" + } +] \ No newline at end of file diff --git a/docs/opengauss/api-ref/PARAMETERS.txt b/docs/opengauss/api-ref/PARAMETERS.txt new file mode 100644 index 000000000..6da8d5f07 --- /dev/null +++ b/docs/opengauss/api-ref/PARAMETERS.txt @@ -0,0 +1,3 @@ +version="" +language="en-us" +type="" \ No newline at end of file diff --git a/docs/opengauss/api-ref/en-us_image_0000001072599100.jpg b/docs/opengauss/api-ref/en-us_image_0000001072599100.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a3a0c8d8cf34bef04f0e41c2ba32cad2477f214 GIT binary patch literal 139826 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 literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/en-us_image_0000001072791022.gif b/docs/opengauss/api-ref/en-us_image_0000001072791022.gif new file mode 100644 index 0000000000000000000000000000000000000000..493d44822a7a99fb06045fb94afaf6327c4bc755 GIT binary patch literal 51895 zcmW(+bx<6<)4t;F?(Tk+;>F#qc+o?OyY|K1{cx8=$<0HA+CdItc!0k{DF+W*#~|2F^t0RRvH00sb{0011o z2>@^c0h}NJCm6s91#rRv`T&4F5TFkN=z{_JP=G!h5CQ;%00AK&KnNHR0tJM?0T2KH z0t7%n008t0zg0j z7zlv=lL0vaKu#c#69nW01395UPB>5>0MrKp^+7;=Fi;-~)Q1B@0KgC+Fa!h)0Ruyz zzz{eP0sumQKnMs30RtgWAOsGC0e~co04M|q z3ITyaz@QK)CQz zF{GgOM0QPIG8y)6qlyPDX-CFb6?zW4yM(deE^`7>ttxnI2-PxXwpL>Jhn6w(bowrAm z>71YEdb{qwFO;bkX?*DGe!N(3`LZ|H*YoS={zyEnW`FO?{n>Ku=lTA=-@k5-W{NZi z`v3fXzQ5R;9~k(D9}3%k2ojLQem@kArFuUMOXzGr98ZDmAcDxi{veVJRDBRd<#Tor zO&7&>7{iohe;CVFS$!DC)y{Qx7|%D(c9bBvYJZd{d|G{!B>r@Elq`k9ew-pl;&7a* z#8PvdrY7{`I9-cff&C;y&%og%(-2g1l4a`i<0RW6iv2XlCd=UzY+qS(n(Ng5<2280 zyomjKzSpWlmFXfE;;g_lQ8{ao|25%kK?I58nc?(JjeTi2PR3bTGQoqr;GC$}TZmiBF#*N^WU9gKISEuwLjj~qCKT5@+7k~<7sar(KBWN1P%{wpa!nnK{G3Bv#kT^bn z_}=iW(34z<=X-gZ=I_(a==poh)GoR4ShoeGZk z^HO<})ir7dSk>h~)cUB0CH$x$LA?`{o|_`IPtM+9&r!{p%f)|+aDrc7l88zS5z7c;<1chpT*t8BZ}kQmKx zscPDvua{G_nqtybVmN(IqFKhI#b$w+AN?aozIL7Mb+Cdv`ZOtu9_lMi=@9a0;+gr+i*Q3Qp(QoCh5Y%>ke#sqB z{d9jr{7e!%EX5@>A81lvR~j{0(KG<%B+?Vpe;Q@W8}|Phb0S-y+lkskiNc%U^hRFs zR-xcT%$W?4-v7Jr*ZIzckK?7~h}auVsqzP=U7~p6eXgN6!y!NCnaO9STA_w?bUD|& z?Sxk=G7<*!+q4p=ly0JBUJF}Zn?BVO+lP*idSNGCu``E1WY|;@Ul#efJ+lPtPioCY z$Gy@RZ3H&blP zxKm$YA;mFZh3RxSPPBSlp}gsY3icf!ubI7s2NuXZzPPgrkRMZzqIuCO;zph+w7pUm zcV(up(TUx-`;n41Wm5PV`EDW4>XAR4iphB^6t25eIN=nAiEFdt(>HA1&<55o{LoQj z`X^DdWtU1x;>mYwnrtqKF5l8S_@W>}8QO3(RV_6XWh#>9+SMF?~#p0qR4e%9lSN;f>9LG5h$gMFD! zE^6ZurZ2Jg{p$nZ2DgR{aS1Zb}ujoGh#%X*VT_E;s}{vO*Kr-*Pl$Gh-VPwev1Ve$)Mr+vl#U{3bz7}sP8Nq|4TE;N066Zf?&bKI6v2XmNudPcpb?CehKMT}UHrmJ8uNbb;G=yOSi^T(9FanN_FT?j)KtV{YA75@JV9_w7pAxKVmdh1`m_^8K%YHScXYS8~)a# ziX-(5s+M3SVzFQMV>=O;`sCHuOM3x7t?cL?Ag_)#Uy2{)J5t-Tj;M`j`x=DUQnbXoPX1TE_%NLmB};8Ac4eXt z@t^i$P6G-~1cEW3QeNDcMAN3|B5mQQ5uB{k&&^(nkCD7;C-GJ?N#rBJ*!RTM&*bU4 z-e)6{0qven8Ccg!#;S%2WG^fil{yyqpM+S+vn$e#9zKFsKMny?H+3C!GL72}+5QNa zo8c!5u181ex3u@@EUXD~oI@ zI$9ko|2pPfo`~kJA#own4b6&gi}lis;4rGmIyTHZvmx1T$%QI=B&K7P80C3}1MOoC zIHux{WwdM$a#9t(Zf$tMd_Q8!=50^mA*JV<9e{s|;7de*$qfw8S+o)g6v%&!#giB# z#@}#M^Ovr?FT%%{Ofv!kb6h5)ip%XJOteE9+l%22#XGSQ;)Z;982Fw!#Puh6)B*TY zok<3={1qNqhr*@UP1!0#ncv1sN!*JHss#&I(s?+_aNeovh8DDymyzQKs3FF%O^NlP zm6Mf(q*oI`z0H(1@!ydPMxF`I5fo~kv#zxg)%sU3xEHT_OcZ14mYa6thcFh&Sh`xP z5d5_+X$T9@&a9*?$u=-1bVaG6$1kI4iLkbWzT$BsKAQ%|0tdpq-J;#suM6}~q zO>|JYL616YG*A2n1Y%3iwCYE5W%L&UKQNdq5hVU%POoQuy z#)>z0stbG;8TzuC@!rGDg9To6FY07~Lerz}4kagWfE}pzi zgNCC(A(Y}<8Zi<0wfY$Y-+uGks6rY*6~9iTF=iYT(cOS6Z;LXcd^1g;zR^f<5yyW- z*dyGedgMo@8gSRr^k^GIvxT=HLexvqj2voYb3hQoQj2#>M)bF(`OesR{IHfU4{v3Y za8s`ZCDeM4z(_O@&*7<&yCl8$SIcyZ`Cb~^n#VVk9v3O?9Q3?8UJ@QbyVj*rj*V^t zkuPnD&ph*1ZK?;B3Sw>Szj-ZciPopul*$9!d5A0Co5m>RxPHZ%5#?J@IIDxRmA?6;7=Kdq^003SjkC>uSj%8(JUQPv@9y| zC`_pfG_v|-KFl8LnR||hlSw%i$ zy)3mcv@F`Y_it2L&>E?uGSL)STONgE2_@@-NLOyE%%IN4Q6``J2tzx;K!uTjY)bi> zMekiPuDL3mkqb@LD~ z{NqHvet@WPyL{mXono_H6V$tomr`ZUILAXFbMDPE=$qF4aWSY{3|NW20svPYo7pwh;ZD9BjPW zz|d6^3gql{`PQ@f;57Q2Ft^t;i8(S4WhGZb3#{k}AC==%8CzX@-Lj7E#b%3gaBmru zPM2O^fSVdEx<{-O7R<(uY)o3iGR(*(%~rA!7Vh`AKXFSEuk~mI3oq5%!FF=2Py{7^ zlXrX=tj(JbG7Wn=-yO{4p7ZU}WCi|SCu2eElOi5`)ae~$^BUY<%L&wy(%)4o(e^Rz zI|(P<*;&ks+K6!;H~X_Q^|C>BP9C8y9{p#9WEW==0K-vNHLRb_;)=+))i@4fGg=-G zGabF$nY;jvzH^3de;NCuz8~VeL$kdMFb$}aU~dta+^Zd}yP79U_ZQnG9_J>?H*9t- zNtdVI_{@#FDRE*zeP9?YOx>`dQLw|JLOz{RP+gXuC~>k$ZC{KsVfuGACLK$OdNx%; z^`rnIxa2ng?8KrKKio_&a544I293lt@eWQS4{7stkB}@s_^V6C^<<~I+5^KjS3c`G^s;I8Oc$})D*w!5 zbMgmPK_J)G)74D7nm?xaWfj|sSW|}k?eYB8l)>z*o5n@m^~F~3MuX(E%0^FlBB}LX zP#U)3QT>Li`Omqw1NXlhWIN~S^xvUy^3J+oZfTdR-1tmH@*j*rnr~muK3xj3`H-z< zEd8w=OuGKw9o8>&y_G|@%|38!IMgdE?eSZK_-E@>+#g}6#0gE(>FCI;-Sx$0&;onI z;eVhe!cuqxm{QaS|`KVQBW6?`0pUp=N^f6gU@&< z20uc)=rpq6JeGQQ4!T$>d1#ch(H(n0yL*%L?!=Ds$dEnS>}Zm=kIN{iSLVCQNZsuh z+E0%<^Ij6{bhvv>eZ%{hdvpDdGw@yCkc8#GPiuAVyRPqKv$s!fk{*^4Md`0E=yn&w zex4JP?sm=zpZ1d&1s||V{>0n;6>)VsGH^jzn7{a6bz{b5u=|z7ZlPe(DqYZM{mv5J zSn zd^AU!Q96-Y;wut*>Ta*kt4yIBSf^s#@=A%t6Ww#S*Ye(GHJ^Q+c`9Gr?rxjht57^& zY-5%yH=$g-7`VkAyy>;80@1HGM@G+N(Wx@dzT-OA2s^u_MePxJoZKYx*_3~%5T8Av7EwTgzfhZ)hh;S`;hH$$N%EQ$tMZscs?xwtC3 zrr?9&sVXcJq4gJ_%}ALvCekdJ?!q>~`FCPgu7LDTU*ODjpQxXWeKqMagYY@XR>8WPK1vJx;=adB#W14#uLH%g;9S&9VyHb&`Op z8vm53F3t6(CB{I*Dfv8WO@AJG50}kcD!gNYy6T*xPP&?mWzLh_ zgwy!bxT-`;<3!5!&7DV%Z)t*25U83m74ECMpeB5Jc4|S=Yi`Oy-8r>uEd;wk!K8yI zYr>2(PC<^RsKTcKb<5aO>piv^5s&gORa`E?fxrjJDuy~CvEa*X5*{Qo3{JL!LoTh} zdLIv5b>$-`qR-c$T%n!In*tS!a9p?o*@01k`tz`*F6H}~WhTtA564Q#9)>G)KG+-4 z>bC9w6gwJLn5rfaw@s+1FTLj`HOB@XDtRwWPL^|{b+Txq5FVJ)TN|q7skC$Sx|J+V z&u3o~*Y1Kbob3jyPXCZp-M?`G$sxB~9o%WLEKrl6o-9u?#Cg-)ZMTXrV~zU-Q9+YR zRfN38B2$Q%Yu~Rqo{sQm7d*uTYass-QGpk%Z9_Qg&hS()om*iFokE8`)6yJ8FV24# z+bsc0QRyf;Q8sIJC3go~b;qi1TWOz0(y1tf|H@lH?Un)EY@Rp3ZO`ZAbhEd0jm3Aa zYJj=Z&wXdBfH&Z8MnLU8HN4NnrIRF6nWf^-a>qcYn?T<7>EqJG!tK1`$3MvrmTdNq z$ej8LNwMnnE7M6m@O91tN>icV;kK)G8XX_=@iFBoWj;e4i78H7)#$4%CimG$huGiM zc#khF3=>QYOmNRwFD{rxpV1eDZC|r`_n^8-F*5I!f1oH;|8aAMVe?LbFC+jE3R~=c<;#P^WG@XZQ z>*U9n|H^&FkD!sb(1Oc)dDYzQTz!!yQpIko;O%gC)sFIrH5MdSQAXC}5TV*7)htao zct0jNeKEDt4;%{`yGeguOa?c9P}Pq*jzGS!<%{g9UB=es^+U>{xU&B!3Sl$+cAwzD zAS=z$rfv9MW=DYI!#H{vmiJN^)BYeiXO@wM0WnfyJqapv-n*30+ZMx?I8U&Ae?#tv zFa;~oj4oAJctAGRVID+?u=7M94k^y6BL+>j!-(5uuOwPB1nE0|rOhKYt%lguMgClka5bV$;IMT}yR^zrSJY#mm(?h)#rxIpeFpzf;YzS}OZc zSJ8VcFHz`c7u%c=Zy;GysP%;U#oZnE(Rhj0R&FK!^Qf6&v+t)9=J{AKmwDN^RhyB| zPkTp>^u@Q$C7VXQy6iD0P|pM7$_gRaEy$v-wWibQE3}5$!_)xGJdP=fV-0h{mVD__ zjM%QL{3GD9RwZ<`ovAhY3x8T0 zfUBeDq#(x8;y)+XTOKnYK9|V*EW3(WsV5j(m)Gukwvq^HhX;>=R}M*lNZKwVeAS|e zrI1z{YbLQ83fMwo%m~Hs`uK2l{`eK{*g=FwmG~oFFvy+h6Ks=JeGlUCOy=IvCseD(vJmRnm~|N^ zcEChnSgQBbkKZDnUD#0C0sL|szO|r;CMHMaXr4!Xn%&jAA7B_tN=ol()T90Y#M*10 z8%(<`$u2V~`O7BuXpf!5FE7vCtmEX-&D`0axvJj2@L2~bnc&B(tv*l?4wZgu!m%!3 zyJWEKm*a^Ko{uoIz!iil@0J(n#Pr1UZ*0tu$2dtX?gbpP)nf1)xO=wVY4) zg?;TEMBcxbwJJ*_^vw}g;VNM7XB`(0ZVU?JqkzpB_K1;`CcpC_&z-VvZ1?B?#vrW! zPLM!i2%9nX$Fq08Z3MtarH>;;s71==OaSsbSQ222-PbcCC--G~1ah%MsH zY!%$oSM{iN)5w?EhnA&vt-JgUB##pEt3BFONLQhQioadF8n(vb;g#yE_^~jOju?f$ ze-+-*l<8Q0PecZUsYc)5prI=$Zm5icEf|}K^~-#*qZVl;_4ZkIs%9_{p0>#|BfZm?s%TH$=Yg`Qi7p|VuE%Th79rYMB zKe}gPmUyhx%YH%wtN$kFc@?^!2`7F$NORlGvEt97d9$kJty(s2^L$7=cHLxq|9&vC zF$U%9+lu^7dx5vGWl}i%w{`R2F-h<5iv7LW7rh#r$jt_?Z8zudDIKGIq`G=VID<=i zuapWCRe&jsE!XaOU1439U>dV?dYdgN!My0$&4Rm)SiF%w0{CbhW)Bzhl+fA@Ew)MH zlXW>!OXb%K_S7Lp19swIAk{`dPADSJG@Yo5Wm79-nyE6l-UJOi)Kau0=0yN;R)IW> z(AnPBN5|&7EOo4FCscQ5aE7IrcULREq$e^+JwMa0Q07h6qGNK!3uR<{DCxQ~rqC6@ zENmQza)@I!ra*j47iOyd@Ft*c#Q={P*>jK(b`oIm$k=gbBlMDkzhX57q(P0EI5HT; ztf&d-n~0mp=W-;;^P5P;GmAI|>KVBAd-y~gi-2i3+C6ynl>BsD@{8Iy@TL|^WdeXmaC8LmbHN4hfANacy+Pl{chv#M%HNdBQdmgkhM@qZ7$-ipk3# ztCXZ7YM7Ay;iF;Oeas~_wCu%4gk_OZjO$i>BBDLmVZ`$x+#056RC0~0=h8MMKv;wvBk}(oD8?g_iidvV?@@e1 z$Ov2!HloB_=}CS$XG-%VT>#Sd-O7Zwsy1y_f*q5-V?wGS^4XTDYPEFKHf79~VtLJJ zkZvLM^h)IBp?%6E{ZV`rkK&I2cROWNS}FlLSriV9WKDbp809bqNv*eDu-nYQ)Y&uytaLFr%$YZr|zOclVv`~{1L+or1l4Z0wfNL)EE}R*ZfieHxu~BY&GH5^p0>OG7Bbp1W@Nrm+umanF+6(D%zTb)jGuMW3KTenP~3=<6^Juc$~hT5%O%3(5t=tKqH$T@w@ zUTmyInYMK6I2g#)r!!ZY(ctr=AscVmE^^g=7LN{Gh3}m>z1V>QWSX$(?i8E7WL&IV zo*&TTSZb;=!NNh;Es&@$Lf=S~DeM0si|-mJsom9*eNZn_ft8Eix>&775i#YB0iQCa zTEE=N_km%Gr5j|0NQ?y%y;_aXI8LJz=^RM&)@#@1_D}{mR5%J|`)bSP-J>)75tLM3 zI&4a}Nl%|2G3<~|30%xwo2eac9+Yv)We&?Yfi`z+GUeM#4VkPL6B~z@w@@?5jL2!t zptqvSL;pPVQv@2LIIhUFO`gw?p~+SrAITro(w^p|AiORs=PO6eU}vitSKLdssp8Bw zvh3;(ygB6)=noI8skKN9ObxE2PhvBd5CxD$5hLdnnJ$qF^r?lZ8WWFTd3AN5k?v#l zjp+9|OD|C(NPT_4fQ)_%oZ5Op69-jHPs)A^Mw%hRDAF7oh(nxTNr%O8_o}>#&bx|i zbZpNV2F8`N?QHc)*yAbZ2`X0~neEARRLFu&dm-{B#cmS2ROMsq2pwmf;|;o*hdbN< z?zd!u;~wWiLh4O(9QmSF%KOYKALBpB?x@NI&YGJxuFEC;CvVuzH>^yM9*Sg&zg3bP zrZ{dQ5vVQaTPMzZt^x99o-3odJzl?AQam=w6E$K;YfJPl-$|t2S<+|tby)cME{pXG z;UQ8BLhD?vEUuJxHB|v=lMxZhbs8$aP@L6f~6`|oz`XvW>uPwMI zi8CqxKoMTj;iLG?EvL@d-pK8srhq|3@wS8WXiz?;;*5lq` zjcL3XrhafN5e?S&yTTTBnhqiZidoWTsc$_TxSz}n%w(Ha!&MT}%pS-rD~Z_Tq;X|W zQ;H1_bV&Hs>)DQxKU(s0xZQJ=Ht&W$wlmNV1j=tJV`crkFjlXXqkUQcg0QOls75Y7 z{ov-7Y^g^QgNo@8JW+q}39ei-JY0hhX)Qw!rM&mNx{1QTd*KI!A`eG`Z!5ViQc(nQ zzAK7JCrMca#|Im+_Zfqd2K%tz$Mij)wS#%kyVS>y=IZd7yP&X((6;FABdY?#wonbG zKe%+W;^Se{6vk$f$99563h+~?JnJoSqo*EgG8%xmlt}uVXuOiJMyRet-if5)S$oc9~p)Z_$;@c{ERQsMZG;3b0WKS-gmN~X#cUs`bX?)ZrkMxk9 z!L0JJ^ws;1!L}!tM?&B36S3nac|&)la`EG&`Joyllw}G0?xGb}=7pA$?T?nHJJ=si za*i(&uGK+vl7|9U++8 zoC@zghLGKard2LIoV|2X$W3#~-a0_iZHLd+fPk@v%CA6h-sgkYW@YGah`?~YyTqQ= zU(06saxG>XzSb97NRl+G##LR10&G?I+S4MoJj-x6+xXZ~2bj zTbbrlcTiRe$7GEJBf9EQG#e@nvn{?wIF?$LWyiQw#{qGn!4ihfcY-hOuWsv>M_+t} zFh{eFY7H<({#q}dPy~J@>hQYT(c9quDD|3^&ZhqjcIAQIm52D2PH{P%x-&El*mw*F#N^8 zrb4_U9s;V1t9LY9c-_bLA(Z&qHnvmE$_>Q8GBDTNKs&AWc$d<){q#VT6MKE{g-b}` zz+V1E=4s2Ga7r`#VW>NNQu^xbP$rF7{5;QnO7Hd|9!HX6#D))n`=^@Ld zWT0XUmaXJwl6kioA0!Qgquy-`VST!ACNg7wh7lFRD1*s`q?R$i=1g%7gcvPv~E;!PxE?wwfV%?F>M^b=>Hd|6MZK? zdQL0XpRv|LhlET_5B{rRuPXcl3(9w^k|Yl4Drv**t$l?x&5wH9DmUW8{wL1&(f`=#J#_g2a&$=8LOgz}PDX@0?p%W>Ouirbb z*9+A3E&g*^e3UxN=(?)(|GRU1U+R*8U`fSYhjD8Jj-h$Cm;Be|{%!93TISx_$iv;| zr9)Wu{nX12Eh#Q^LI_K0uV$hp;PRO|_W0N9sa*mRZKbAMOnvYNA>)D7-S*Coscn|x zV+nbsD=q6|gAh%t;10p8r_l<;PlN*oQq6}XVr!Hv9o3wh&9h)Cp8oanPbS)80mx{! zGZ~QtXwG!Q;RtYioCFj{@USf|GKUyUtC&3oxr{yD$9~|TB z6<)n$x*S#;R#iTN$*xvM!967Ho8IQ%i%n@inj5?Fp07YYwYXfpzQ0^=wp(s+{w;L9 z-R&-Li5ADG7%_xTP_FbQJQjvVt74jkcQ}ziEJjiF)l~F$ANJAZ=Q^dx^WjVet!t90 zzwdPwl12i&{da}H(?$*IM|=3u=q)BXO+=v^qr#-a8kIbbv?6uDV2NCj-yLzMMKEPs zv_%Lmjo-E_=3l#Qf84S3esYJz8n!R;=eFa6nFs zthE!{vMj_=z~;3=Mjd$bn4Lg&&No>W@~@}F6DY5E(Vd|e)4X;S1y z*1f1jS@sEq?^ZK&#m!fB^|fJ-B-$#<2G;3iiT)(Rs*zC{IoK^z%pb&mYNi7xR>x0^6G*DUC;3yCnEdc zp52-+T$GxEqTT`{CBamm;$z;C5P!n=6v;ZZJ@Ic$Od06XFYri>^w9QBd|B0^On$T} z5x|!(AJ&^D{H|NTz2U0+(kwDxXs1kkW2a>4k~79>;tZ_)aQNw^LmJ~-K5u|G4SHc=6D+f;+7yZQNM(2C03v?hl2#!jZ(;O zCXb^h55QTZv0+DlbQM9xh;03;pI`poUZnfnI9zM2;Fkl33#!LT6ZDs4v^}fv?`8dJ z44sy~)@eI&c8sUN==9OdBp(sT;xP+i?gYMqWs*BpW()zb$a`KM227Qkn6<1ec#W#O zFadU+%36;v_NgDq7t)cpi0V=9Mb&uajZ0`)_knw?0!p9?0jy#~aM~U?DQlI`m_bf0 zsi80!SPJF%L`*#^8^3>{YGT7SDNWFvQU^w3!!pWyF0PkWqqOvHj2gPI;bcUh+LHl! z(-Rmh7<PGXmG`x|QnlNXO}NGQ zWHH2tzT4j>?KM14ZZjJ1(zH5k+`(3(dAY>{rj#lyol0hMnl;VD&-4B=?ZrTGoEPnFv*HJaqSf#J!2}t zCUQ`A07IuZwB*Gcpy-^dRFygj7&@ieI zzKItnElQs6V+Z!DK`WS}Bsh=IS(JLT^(r``x7P6iCrYF6^M*5870GNI9!x4Cm}FDG z^Ca^To#Rq3VHHka0=ESGjJ%TKbh73&k;k`duVFvozgWeu3uetxW5(5aZv!zJny(^t zH__%Dt*x$9cR{eUaLv@M(Sh?nhHnhR6b-#Q>Qm1h8@kJzTM6}zg&MOEm|TEUweJbX zald45(uG=qm#|N(BwG5aoz)q{lHM`atxDm;s3gEFC8Jq^SpjY-HkQI4TrI~KG zH45uo*8>k1t={P;(;r;3rpg~l;xB8>WI0)sZxu`!cL>mG3#mPemYM!XIy&9pS;DC5 zW*?SzFm~`^K=Lntirolp3epQpfmQME+yL{tf)r!(_|Gr}ZylVp`p%DSpVP}gs*fw@ zQ#lF^@1b?&%kx0hea=M8o(i2_cuK0cmmioH~z7ROVi zPrtrTy3M8O=RnDB6V`)s?~Pik8z; zu)v&e@M|33;Tce-z=ujc6`~@+(mDr1#4a-29L>5b^G{#7&nyXh)|qPRn@p^VdVBlT&}Tj6;U_L8mB`_a4;nVt&ZJwmFfl4<%KLhjh>S=xvgWXVGY^WZ zvZmzm5~)=7Z-CFWnds~Squ3=5H2w=vm__kUM`I(j8Vn^HbqlYvmcSCu8KsOsrhd?% z{J0^M1RE)i4KeAOnRD8g7Qn|wx9rIP4+gCJ>O(TK$kRxu?qEY)?dZ-(7oX-|4{(dn z)l=LY=CE;#>@vLtk6j^Xrl%X~ar6p0S6MFxC=|^&7*Bpk`#SO|ev2;Nbw?Jrz6yTo zDH7fVeT{6fxFfJW9+Yj>L-XW!OJg#-I9UgDSoVC=HOv@Ux^QOB`!_p>h^F5ouGGIe zCq~7o`-y`E$eN5h5*kq>1=QTkE;=ScnV5zgR!IDkaH`L#>ErDVC-vS8VT7IkPR$V_$x^xTZrsf$cGB zFho<_X|_sUM8>y|%0P2MKl2@V!K)Q_wLTwEQ0Bf z3~c{C47P2H)q+rh03{8*3BgD0=Bwp2X=f&rmn#A z=gDdgg5%uDCgq_AIn+Xu z#Z54stBKqy#@~|DhA@!Y|(*30=&llp$`24=qj0w3wgf=oi)o ze>17HS1~Tx=d}Z=vz^^gwiL`wfYX3WL z5j14(#662?N;d{SvgzHGf0@c!^6($)%qi@5A)Uz`^m2GO_QYT+~`xbjCF>@nU)k3$wHL`>-0?EOAq4 z^|G#7p+%Fi#m#4Hr6RIU7?>*cfVha&!)6tq&dd*eCS~08xrhQm9tlC^vl13x)@QMo zNSf6@grB)npEky{(Gag+%4O@u2wcONKR;D`ZjRd9E+C`IRIagRJ=eoDj?w!w9k?^`j#+CFZ%ys}#I>@eH$Jvk zdFbs9U6q@OPbZj>IT}vAi|j7M0Ej?x3A<7k5ZyBMi-4a zjV_ii!u$+9Jj-ygjN4Fpc5Wc$r1T`V>I!zlB+F8{{>~@zp&;}%*iJ_&>>&1#&1$^7 zgdWE*Qu$gzVo(j$qv~rK?ax@<2fdtlxpARbGK)n++pFd4#$#Ok70VktuJiBWHVhOu z2vTEkw58A~zDpX42lK?6^4mYm3FFlXbM{I^gtBf&jrL)<`*d#Q3t6eV&Xw41JfGO5 zF>BRmWO6ewu;tu6j;tB97BdQ3s;#MarMx4-OJv7b28yBE7GxYO8Nu29nJeG?)-YBp z_t51~Wo%B#F=f2y&Zv)>n3vtTM`gDyoJtG)Dv>nS*_2Mzt|Tg)|5d}!2PSn>|B_Us zM5iM|jh9NJJ;i0CG4ec4PLxZHE)vkEmo8#Nyu@EDTc#;Z-66rI1#6(Fr zXRAW(GXGMY7oD4q;(M!T#@|7j+ zklixr!p99`_ryewZdbb1QdWv^E~u&rW-iuvTswP!e}@;cNTq#TDsrOn-EdLrh2biN zmO?PHYD_6k$f}=h%$|Z-_{xgVXzZc>%$`6w^c+Q^*pMZxbmE=->PyH(&ib8Aq%}J; znZ99gE*1GkA=z<>`Ht37Gwdf_VZ)Fvpal_JX}TV5O-)u&wA zecWtSUKZ<+nqMxCwB6R7q9zw)_MxtB{4vU6{LQN(Zsrb;A=|#<4F#+V1 zOBqx$`pPzXT)!iZ!{U(-%9BS-6GaOM8K%Bdbmtinx7x|ZkvnQOC+i*B{G)QQt9hW) z;Qn>Ob^FVqe4U4ILk$i~%O4d~P?*4AL;mT;q753}YMe~5jv!wx*-cF<@x;i&t}YtH zdFnv?W>=>XEslIwXS9fH9g{#MEE7wX#mekwa8BH~otOo}e}^=T7N3n-BKe%mw2i0q zu6IMMP-gmU1|N_#?@ZI=OlKOy{SdBTFtisL^dXy_+N3G$wCV~MGaWT}(c52S7BUw` zg^UVw>QWIm7W2I~n4MOH9U=jpmXn#5(BUjU*4ERZZj7C#%~d3Q&gb5u#Z%^IqN8md ze!>w{&MVuX#_TrZiJ)Wa54+S9Y=~$mii0Hd6w}ly+h%0P4${KcK!)8LkSb|79fjH` zb$|sKMxrP3Wj4iWHb;6+)C9S48T?@IQAjRF+HyT>A&k$Ce}iXFqtKH>mLc4NEa+Ha zztC1^;uytxS*d|KfKDE*^5B(!Tn10xu)=rWp#XWtr(gp`o#tR4sXeA{_Q9};9Z|== znjn?-D}i#{sgokjXHBKyJ04f`k+I`hdB1@DB$|WJTL>#bBO(fX%((QRbSl1i+DS{V z(N1dalu0@6)kf98s+1|IPZ)@)c%!HGS$D;%#`q+tO5Jj zht(+Xds-DxtTs{jSRGnY=Shy{M%}{v87Q1~6mgK)yckTPhWJNVE)eJt+s*4NqGftR z*W`an?X#cWYNDAnpFZwCUDH%qI1G)~h-B%Q?79==LOfP3B=;;R%N#@uPz^{e)xX!s z1<}1Dv^AjoRs%U`%+Ydp@mMY3+$zB(m08HpM!o!6ARq+~H~0HC_a-lo3RY8d)Q&Kx zA<+|Ka{Qepcxda$8eeq~Z0{R&HFJ6Qz$|3QB`EoUVUA&!d>`;w9aAFuxejDjIei$D z2_1cC(zkJoO`*_&R`pQHgA^lSLsrzMcKknqj2N$|ZwysmSVOlv!I zEN|JuBNb#_yu7GxY96bT4^3EqBIQ1RkPE~VFfVKa(XcTIP&6`LGZZojtFo~j+)(@k z)e2G=GAjQ1GU^d=G=3@_jD2X}!%P@F27XE>Ud0{IN!c(T6T)E3;HC z%;R*&S-7cqDCyGHd1?&TWX;9%ll`Vh_H9sR6#KlZbuVi7%IcPcfQy~kBXH2=Y=^v^ zc+FN|OSYU|CMZKPV`k}V##FPd72Swl(ioGU`wV~)z=|9$Bc$b3s`c+sgkd2HaQ2&W zw4B%d?*HjAf0D8i`9R*F>SKlPk4{8vYzjtae)>NEBS750M2_P|J*a0de_~XBJoT66nqz?r1{&Jn~1vV#ULX7}prp^PWYDGWk&^+tjYZ{)| za@@@RoVvtGCT2o)R}*&sce>mr2Qn7T-A;B#dNB^(wHF#;-A)8^YTFI6W8!8sM5FIx^NVGveL(4Bue^D*80P#g=n+R1C9YsAv!Y#SJF3|WF}HPQ~Wklm~)H} zE0GAGM5(zgvt%a!qrv~?Bw9?G%#p=C6Qio`yVO5x23nx#%J&BnLhk`3 z^@9hC^sf8q<|&dwgRnqDB2PyLiZ}i=NAXRX1qe-Fgzf-!OwC)WFb;!`xOSY3N-&_b@>@S6K! z=B5bY76-jL8&3V8ywFc@qS3$c5#E5%5=ABoyknqmVzlI46@~p;#%O}2R}`gFoT@N# zEy(b>U&#|y5~T+M@lmGirNhWoOe318c8FYJR|GjtA8itb9#Z5!k|@Oue#Mj=p<@Sm zagXrIT8_#82YNpb7K5QBJ}n7vxsqi|moH()lsS`TO`A7y=G5s@*)nL$b_NwH zGg{AOMl)H&VG+$zF=xbN%5?PT&!kbKQSEtAOwXR6ie^P)k?K`VKS71TF|}t=s+z)x z(bO}I#Y|q0hWd#Yn#DADd;VNzYFW{%7R4-e%CxXDw|m|49enf@;L6d)cFntY=u53y zqlG~eSB#H~H^!p5>+@*Q%!Kh?Wm{CQPfcUlE@RyDjhHZ0f9_qDnzuzwu%m(fN_Cm+ z&t7Z)gBngcadoayK}%Ow+cDtAwUH~!{5LYo$k95dSHFHJJ%t75spYzqG!99a2<9h< zDX~C_^MqLnlY)j}NFa(V!mpsX(8y1cu?{*Zzsv@z=%Ru2ONgKdg^5d;4fU(=B+(?n z(8PK8OH2}lHiRg`f>?wPMhOdgPz;3hVb3KRG0AK`#KaH=zYJ3xFhdGqlyRQX#Km8t34t_KKE%d6ISfe%q_N|qa4^%Lf-nZr!YRGv5V0&f7ST(2 zBFxWBl`VRxVvXq0S<5y#-Wfy{Ft(tpv(?r^T3l$6T?o@UKZm(u)mc5u*!Cx zqSWyO&%!p@?EM+CQ5MN)Zi#a(p_blMGK>@x>W$-0_V93*~W&-FmgTU=e;U zx#plci{NE;)l56)&=^aZo}5!=+{}Djs%-2$H4WZjk6ISn)+|>Y$fkhgRSasC1MfLp zA!Qbtx^7rz^qwB})-lF}1FZPIe%}k%Ol1ElJmoE#B(U9v<7zC@pt`OwHtpq<((8TG z$%mIAZ}4rEKGy3TycSD~&+XlsF^8l1q?4rC<8NLL$KTrzQzzbz#HNhg61I}Rub zwN$8Z6w}8;-b1qgI1q)HFwKYdG>=r(uu4-489{{6lq^~3I!&=(kPgBoHvutDO1w}L z+tx%$9I4Fbo9TF#&K#}x}Pja;59r2h)J+ej_dJGh^P*<;e2?tio zam*wvvb>^fDlpN~O=7a5jNYKZb8x{*ccKA}Mh0gY=)T9_%x)LJKV|@`-qz&L<52b4vnE6h}V>MHx1< z)5d1VqNVLeYhaY1f_QY1Ou#3DJ4+46l9-<;UIZb?$WKI0vZcXUt%-5^8AWR-iKRd( zjS=b_h~|L|IOVNL1?l0#>H((|ITS{8e^>YJ__@4a>?Z~ zdSlk-_^(`GRV(%W@)=_xg_z#TjQjdhtN0a9JY)e3t}ru}aPd)n$}`?JH}{j$xiWtb zv)&;6@>tNchImXVCHH=pOSdo+Q`Bqg<-(we{E-!PW0}OWGnKUzOqqpJhK)^PiuoC0 zoM9=iqzY`R*;>}wi#5e!-b!2xPlR+8C;F&a-d40HDk0>6?U-MeaEKs=S}j6a%nyT{ zLnsjmkY#pu&E*Sc-jwL3dQ~uHA6x4 zkkr^Tq=^(HKusfXdAZUe8D1@l_IU_H3c{o=Ny&_U8<}>?NG3F(X1PhDA%@n7qUsE3 zLslj3iBX*YVim8L#WsOXU_`~g+%YPxyloiH(9o0IhA%4JvD6tf;g-x~LYs6+OkgZk zuU=v{$65Jb zRF-q9Nw{TSP)<&gS2Hd_0%u=gsj*Kq+nvntwve0}a&0)Nj8i!8G0gmI!y3jg))X*e z7-}(0DxDuO!KX_ibK5)+sWu4qs)Z9t5e`74H|bLK!B7+sLblWcpj9_6MhbP8g7)EI ztWXR_ItWV*Qjw*Y$)N*@u8a=IA`j>72KhOuvzAd|M4q99)a@C3LM=7tA_j~HNlgp0 zjox1WS6EAGA(L-J-NdCnWV~RckwVxMp#mLgWobe-hGsYs3!x!PGJ5u<0UmIH51im~ zjHFvaVHVJwRb0mcndchbSB2STd}5G}bXYqo-eJOh7XH@_4{p-8*k4q-rrqxwlv zdOOXgUhk>h5k^c4hjDkJEmacR1&~G!EaJUaw5Bprk=Jy%G6?EyjSzL9f9P8f6DR8b z>~?RH10m>9xdV%6|LGS%7uwJLNKr$>AdMuDh$6(N%zb;>l~#7_RxguWDcx5Mqv&PvNrl>XFcY20 z5#vFoh=z1PO6E@vl`w!I){xQo6t(!*$mNYzJBI=@wgTf}V96_XgEsQ7%*0^M{z~G? z#wo(U2Xag+A}f}D#5$fLH=uzSu4pkL5UlLvA{0%tK2BJw$()X&m8|cw`p=k@!2+uz zU6jn7e(Q1eMEXFYo~WenFzTVq5AUt zF%%4fPG&4TNHNl8g1{?73}hf)#BC_#APmR2zEEr$A|Z;;W^&5I+Tk#|&vyXIsOsho zKaeT@CcJ!SF%pbrL?aB0MB6wBSV~1HkZ?2vthoTk-cGIiK2Sc;0IU4X1|@M4DRCbj zs}e_oQEEfsa%sm(usMul&GgS#Dz1ITO6p)|UhIT-Hf$^iEtb##DpJEv(m*?kqBnX) z%|?s0h9xp2P7_84IjrpK9@BDDGlxEuqX zFogM{uk!{%Z_;Q^l;pYIgo8>0F?vN3Sc*jsYELS{H15$fWZ^Pe0hCpgJbmZZZki?{|*NAd_t#EH7_H<0zQ|F(v`4P9p6vF)YPW#Xw^$ zKf*iE>LMVn>tw7sfMqRj$0{-d0+Z>rEDmAZFb$@{ScD@J>OxE~@Ou75eOk#D8LpZ# z0~|9)tk9BDm?<)1}~#6id#q`085{Nh?OnTaM`s1u-=c0~A(_9x6>N-J@o(tG{yX zOjPeAIZdKiDBq-OW0ENKj%aJHCh*{pI)!0NL<0~N$|6E%D-%RPcMIfNs<99 z2_!asZv->wE}+9szQVun(W^whAQzK}b4#SMsN3J>pJa4l)>j@9O^hUV)uW^pTr z0oUGZi_QyftYa}ga97;GEC10fK{Q0WN-IQ^BMi{%0_`-XXBgLUU}6bh9u9ZDD$#Q3 z`ZnoWR5a_D!TiI-{< zI*Q^(Ck4{BWu3UAux=+j0>;Wf$w!wAGokTD_pwBYtMh7-x#r>87A!>83-nSlMARa= ztj12?YrV>di+GCMq=sYcEkwwq3tdD>($hds#J(!#hmt6X#FM{V=uHEai6&vghT+;i zs%StjzC1M{5$aAe>`y&r3OTJ(tA=9$@{UfTRoOIFW%X%JrEOBYcye!eO?^jDHu|k25 zax3IaX#&s59k(S)dzG}hgFATBGY^n2c+Po_f}Egqj4fxCtLP!WL`EPW%xElCpS2~P zHqUi<+V)(Rm0qF4DttrD04ZPG6fTUiH3s z24^KCV}+QKMvuLf4-Xn_c# zajCa@`=l}2;#ObGT8peUsCN6-3H$CPE&oLvPqY_d30i!K<$UwZ|Gds!7cl&K=M4!F zc8V-(0}z*%HGfVt%9Nt@{ep;1CU(s1$$>H zZlLEr=duKYVerCwjh4SWMubC;gv|)T(2YxK5@Cy`jk@TCnW#b4v+-<(rRFCONyAP| z#W&Oo5XI1NM(RFmH&RvCZQg6%^sZ@kh9Q6tPTz)fN4N{?lwb$8s64Ddgb;1$!-Ll4 zhNjqK?dXRr4TQc@PHK$m6)LX1>HZ3Aw|0<`q3JZ58IbOYGZx_yQ z^CwpFaVL4D;?(ah%L!M4=XA`2L?6dXz}Wd7S0OM)cm-9yr1;*9FQiOH5HI2fo2c5J z>e`t2fer#@cTn^W$cGa$MGA3#uY>lCtwR2_9cCF&eyDW;wPfXMJxdl$a$XvP!CBAr=C8efeg#l1YH2S1Qg2+$)VvGMoQ| z9&Wa00q2|VQ)iO_V+x}8)&x;Fa|?Q^!(TMNrx)#qHvtX<>BSSMoumlS^Q_LaD!nxZvQc$7!Y zGz3|+JfIDHC$mhS;}cUlzUmu@zPh|)*b7Ovz|*;Edg?!1co+a0vpKxO zJzQ~U2m72f>n3Gh?O1MwDO?9|ZEw49@mG<}cCs8Jr>WKCP+VOFw^s!axx3UT$cZo} z7=0i4M2qKLU5m$CYj`wR$k&*#%9e0%8aDFyZ+nzniTwInf|F3XaS$ggaj?80oWKFL zy$#%Ix=V9OIKkl?_`|w6#5erIF+I~Y-A}?SO;J2>ecH7y!?*B7dp_p? ziyU3C#VureSf<>Oxim!;O%ox*awb!osGHFNZKm>o@=L!-7}Bj$+nCsR z&kzw!1SP*(A-a9jG5XS=(2Qby<--qJ=cZ>(40S^{brQm(n+qW@%A6 zxN*)7o5RwnjZMBEmiPF}hyRtY4b>@anPnl&mie5C*gb_vXv~Wks0w~R8-D8%=xLUr z%x@Xc58l0t7piB3uFnf&=M>J}TsyT>;t8K&ix_XB%4RO!aUxOUB|ld8g1c{Zf`>G^ zbBoM^{N;i)mW=+R{}@@tG{lYd$z{}6d%j(r7RkMpmG{TDQyS_s(~Y?l)Qgpst@Y@) zm#2X}rVsGOo&WWJoi(Pxca4d@NpTw*Tq5M~oKQOEyWdN|9|)cO9>CoV-0k}7&zryA zU1<NY%UnVqUvs z0_PQ!*Uq54f(#SRV^{%EEL?UU;CErO1SJ*x~J+c zR=g}K)&HN%;0~6HSTW|ac)xP>8qF(KxRp6)6`lBU;KzO;uLZSr?^wrgAzLo1*{$cf zwx2dGo!IH*;XUaY%t<^sRb>k^mZWHqY|+(cUZLb@XI@vrg(R4|m4;-M zeu}x~aLJ@pX{IU}=g@Zzb}F7m;62yQLIXiqQi*}w{cEShzeUUzy+RM|Qi}s+IMIaXeJGGb%09gjG9wL$BCj427;bdDN{ye^^T@Ly zc3>x%tb_7ph$?touX-zg24R{hr?Pg(bvsToRBWsvsygk{51Hg1wei{4orwt6y6UI0 zCbah1rs@i{*H`xqH_ zgh_m+U8jUk+in*Z79{Y%3oLVK&7bRNW78!onZq5|=o$1yELN!`9t~ajrGl4_W;Yk^i1$x5;hGf4M4A{| z_(>t*M#7)If$&z#0#SpMLBEz5ErU7ip$~ruM4rSYh%pM&VVrkFe6ZFgXuR3%la<`T{|~C9_A>|$9f{3s|7ufoT}0$Ii36xKYHy2h!BdmQ zXS3V^3}#u}nQKfIrYg||cKynkm3YQSwa^SWT8fMyvvSQI`H^BBYvNqI*H17hEGx%@ zU7`eOrZQHKir$-}$ZTUfp0zJC5%Zmw`XZF|1=L+F+Ris0Da%sE=W$~*p|L(`Lt4Rb zX@6@POh*YoRt?BNrhJtIL1dnrGURTeEKob9$s>JmtAVwe>C|F+HU+)3R56`Twrpt0 z|84R<#d@G7Sv5eUsW6xYX{6|s8l97>b**e&(^uL$6@#Xxk8UDaZ@w42%!mmz_AFWU zut?V_nn_@6lwza8I8cAN#xQ2Q5u5-vN7ASU|4^Gjo@ThW&?e%nOGN6@5wYjlG;)!6 zc&ZFt%~w|=YGx?CgO_*A3RjlMO{-S38UoV;A!3G*R~y0)MBWosZw0rvDU9idqS~FH z$}l31TjdO)H4miTNEuHBiK<8xOk%b0lmyYOh91~A{*8*I9kIvT(_(WpD3nSYNJy0q zi;xwLP>cjGw5Bz{Eve=#86=Wt*)l;||7~D&eygix`fY^zk=869S3~N2t+rz&;C!*F zHyIA29_Wg%x)MUnuYJ<0UE}h82FMU>P3MJ6BMDL0+d>J_@;%Y{$h4eQDh5Uig4%&C zkq?dNMAJ_hP*Lw{~>v)wXS0xB_`)|GN)j?TUySS`OKzvz*nPj~Lp~6tB3&GX=eoUc4u8 ziIZrlC@2!sX*V^#ovjn2vX35CPMQ(RgdNoy2+K9)S6oIPx5!2;ZCK+rQY`O0i&(|x z3@}wXc3VCJ;((R&!@mZ)krW(jP9w2jcO;n@|Csc9COAnxs!Nd1tY{-Y(7G+mW<;-TGf{4tT67v0!`$|m48R6H`T79x}ovS`4fn;s+ z)I`EUu%^AJ^G%!NmfQ}WZ+!Ed?>uqB*I3WbPPw_VmJfWf8GKS%5@$S z*E#yYDFY~aCy0Xo5kD=Kf;ypMJXU%OMljmvd^Lz-tC3)tkvt7^bqq#G>Lh~|7Ieb4 zI!B}xw!<(O$8te3TC+EMx7I}q^+cXkG6l9Mrxt5v@kLu_BwR8x{3K&v^jBS28lqJ^ z-ZT`XGc@2Kf^20pT?vvlR#r@q2Oi~;e{E+s+E!d0QA}r+ezLBUhSrb(E)rI9Jm zlUaFzFy*6Q#;9thbs934Vl;P)Wq6H7h=m?y7yWc>+!u5x7e;OvU5-XwWMv-KCP}t} zH0&0DY&VbjlQjGGOWc8Npad(BgF+9)9bLr{QuZwSgD&E?fa3NouVjz#C@X%pR7azU z&jE186<$&GjvKK*+X79eRFHW1kxaH-2w{SnBV_ZCin6GZE4dTVa5^j*6C#Cma-uIr z#EX&^GF%9Kqd`~5mLsYIj4x9cuY+n{xETaiNQA^P1QTMFLOL53KJx@5CcV2%InlMorKBf|9v6?P1l?9fAU&)18iFKU?MtRh6>m*nE zWJk328Kh=Kx6vp&=r3FuVI`(1U!oiEG?UU;7- zY&58xp2md#k`!7fG{!+>8)QRwV_sv|fbyt6>PJcE^<|_OD{;pw4Hu8vbt3-~)QP`z zA6D~$nrV3LfG*XvT&dDOHPxRGf-Q9yN)IQWMa7YI*_dAwROmre?=~x;sDZ#lpWG2j z=}1Ik7n>{Emika9ErEtCx(_cmF}w#yLb+*ORGrx4oSgPCB!-1`7?!+Zzi9`morC#(g*oap-m=pzL zn!qA{ZOT@@6f1tyQ}&UU=jS&IsV;JcRULG2%EU^>m2REcnRVwi3oUWfXx;Xq6C(DWm_ZdT7hwqO}O6 zGKw-<8BwW+iv?DT&xwQ8w;Q%8jfz2@+qrvPnspB~rrVdC=n{^vRwaF+Fj?{=%$FDo zwK1GEa|U%Vf6`Ia>Vsq_cT4!97OMMEDZWA^Qi66>@lI+4M_ZL-K_Em{Wp9Q-s+!l}Zd2IvHRR=n7 zPNtvq2sqS%naUz~`IAkZ0;jBMvg$}aC+iZgN0T|{X_{t4F9?lE+84jUFi;4NsAilw zsA?WVp1so+OLt%_1{dv8DA?zWX$Rf2%oiqo^tiy0PV| zh=fCm^qTGztE@_+z?m2OvL)o>P>Nx*)Q1~Kcp0}^do2rmHN!-)HiZUej-l`_Q&+1a z_7>73drEmkhqYM~(@%*3C9@ljFNP&F2s6D4Y}wg8L?RUn_AZGTU~)@;#noh4lcx=+ zZy=PnXoohYNFM;GnV{+_-7F!$Gk=Mf<%Bp{hX?xEXpk?xC>qRv#2dAC~Ev4I+6Ul1kSVdDq2nE@dnE zv9_kwUg$NV1ql`YXJYfI8OgctV#TvtUIcl}Fwv3<_W4Q{v*7>riH=W#CQ9v6d z2?j?FL&Q>|7n1>E@lsOx>tEt$d4FdgpE-Hov1Aar&J)YFlJsse6e^PYH-$5r+Vx4J z>8W!X9b3$Z76QM_G{_`U;+r%FF|{i^zp;C5Vyjb|#8#0Ul_4}nX3<3Skq<~; zAS<5=ORutIAQ+-805{MsB=(P*rQd~j>evd=D7{|Q*-)%o)oeR$8NR+*2ltU^;;etLdYA~ zjz}Gf5#m)nO(XX9uE&zN{nuSHq>oPJ)%N(Y?skdd3#t>_OCIY<1=Nppd>m^75=Jj<-C%UD<4P=Vcram%6{%z|a!AH&_O z{N2Tzqp&RAkwGH>7TqubQ=L6`QJo#`Jh|x>HtF|Xo?0Pm43cLJp@*Dzb@Ql*i=srM z$7;uZ+4ip;NU5Enh-UUYA`IlXa9c~fO+ce4r-c`Zl6oG?%{iUY*7wcgJ)t}+F^x0Y z;xkU;+w>I87JkXF;y`5L=PXllNw6Hr)X(D7L@nfABY2ouQ%wC#;@fuVi{d@P)X)jk&ynzm{5FSH=)|dnmp&X% zxfLZVd;xb9=w~p&Gkzjbv z5V`K_cWpGkZr5>5a>8!xxNhIPez3>R?2&9g`k>~`4wLF5?bUAWH&WTxuI<~-?cMI} z-wq>S0pU9i?&WUorRR?B=|1X!!ReJEH|h@W@hO$`I&hPy$>~QYy z0S~$&)$Z7?9RiQ=K~x0pZ9>m!fyK9L3h@E=-}@|$;b@nRL1oa`@e^RH+b4__l=d+|5#^F_htKksOxr7@KZ z3Ugi3La+3bK{|XFFV)oZOE2}0?(+Xr->QUBBhf$)H(nMTeMMFe_HdQ$VNdo-v5p2& z_Wp&#JttYfF^i2-GHEaOiB$9NGWK(i_cfs|6rcA%)MziV8!KT@X~EIaP!CZN8-1_% zqv!BcEf7(k?#e(9^q>q(HVo|`4DB!s>~Q&+zxm%G`IH~+5kL9Iz4&V-=PLp5Nn!Z1 z12>^e8#;gbv)?3q|JvFn@|1594mq~H??5Dh5t9!MkU#sy-!Ail??Ex>?z9qdt%g0Z zg0^q`Lhm|?juQz_55vz9>t$`7M6hN@m!d-X(@*|6WP}v24~I_=t$*Vkd|5@&_2rNE zn$Bn@?;`y^`McCXyss=o4G^Nq+Rd9cu%JMK0~OArr)=Lth!G`Dq*&47MT{9WZsgd} z<42GoMUEs{(&R~$DOIjy+0x}pn9-EU45e%tv}F-NDYNO&CPbObdJ0_@4Wdn)p>P&8 z*;6J=s8OX(rCQbMRjgUHZtXZUC)bV%2{Hs**6i7o`jj19IE`E*2~rfx1XeOYMD%u(wN?cUz~N@(?>(evEdroNn@-|y$Yk2Gt22>zoH+lw9J=8;FQ1lyUgFR^}G&N;uLBk;q?{F(`C=(3M zx#u!$ZWwv49H_a!7E-1$Cd+(jtp9?@G;>WhaWl$C7{Ow%O**-nsi&bnTZSk-k+N?Y z@x1aeGomN5M`1cdLVRg!N2g52h6?}V?K9Q%5z*KZ{|YRx<_7vy z!{dsB@HgNr#1Nrre@iZ|3+*bk9Y~o?70q_cRd?O(cKnK6c=rL)&pXK*50s!xtJgG~ z@by#Q^XgUR6czW()6jSk)%9J;#xkhUgsF=TL*+2U@;JII22;2$i_7$`Ymb8~WQQZX z63b!eX*FUS-Fld1m}8cCW=gAa6t-Y@Z>?8PotHt6Ud~L*EEJ*wt&B*Tmz+_k6(d`$ z9@Y#DJ*!IsV%bliW=zG08S$|5+ zZG(dPe>Vroj3n{^wU2-MbCaFT<@M!^f`Eb zd$;@jAa&hcQT1&LK1qVCu76O8oL;W?sf-z?bD2vZxSm9^ul?m}V)+)RxEC%6!9{~y zL))_sH^9TxgDfB!G1-rfYoPUx-(dh|MZu;-vtjT?wjFw`jkS| zaK<(I5Fij$^0bPXY+Tp_AJ)W$xloa;Y74B^6X_zpf`n^Y3Q?O84TF#(dQpss@>86~ z$eM!rYf#D{npb9$H(3RYaL^c@P5y>AzSWS8^P)+gSa_52ol#~Z6y!+sQMM*#PdQtx z8V4b0x^Z2oE^vVo*bMSWu2IoSrD{$gwSuk@c~X>Z>d`1CqeJ}h>re4>UsC8txIFsG zJ~F8f9dEVDyy?o6hmlch7`Mxgi12}#LmLMnDUgma5o?|UQ?#-~H4IJYE}O%m*OCFj zWCRkJEeX(G!njRvzNcQ{L<}tJqsF1=t9SR3;roJ8K^hs>GH>paBTd$#>G8OS@T*O#0w@xMIpfqZ_eb3)b!eh0^qpR4SY)it`5Y=Ih4%aI1`x- zCC-GLNlZ>!R8!N-s#yGL9ld<;v!iv4oZt-iD%T$!Q=bQg4QBi?l(-6rR zdAi|VWGtr*Z+W*8L-VR6c7D1kU)gG~ck=bNvd!fimqtf-32u$&d1YpDI3754hGFUb z2#{8T#DIqLvJmo;A{EIw-b@pGBugSgDRq|wNzrTKI~nQh^3AYbM@{;02Z2po7Ng+g z#3$KP&(N7mn&$Rr=&{$$;t9juxl$-_MGqbKi!=J(4NqKM@kMlq#S_h|_sZ;{P>X2|rDzk%B^j?W`U_s;dVKATtX z>PWbS@iDK3YqJm6xfB(nStFfsO@hIx8>~X|s06v*m8yme4Q*`}t6Sp|X1`47ie6PL z(uMAG!bKdxl6E#75_G9e?HJDFE`M{ap`8D<(q8@SzjvB7;bQ#Cg0+{kXD9yhOf8@;BFQaLEvOt<56Rsv+BCrQiZp2O>38#Z2yKGejF<|A$-LRT)yb z+X=AR?Gb-I>@zC+Ccie*WX|dgRxEG4jQ_S2P&ZkpPsgpDLxLEH1>AN9u~#i-5(L`} z#aKZgeNezCmRirLP-Po@7vE6yiWy%{nKjxQkN;cb6=52VMm`Z4b!NUqv0cINC_^6B zx5v2bAs_i_Qrp%`=5YlWeFJrJpzy?(W0TJSshCm7$0xuz9ATnmM10Co~5xUy(6k8p}_D+?#-%Z~dXE@I>a4{D$ zn{`X`pok~8G}qANX;(YYhhkQd&pCeW%9}p!mh88DhV_o5rin|lR%6kstx+SdGL_e0iOV3y%{vT8G^lWbFX&$ zu|JWi_rV)?`<1%lp%?PIo586C3_M)IFJ6N)JN&ie8?1$pL-TRIN%O9<`MS(=BBEjo zuDK#=Mdp95vMSo6U&!@gp2?YB?z=O zP+ATMOAzVeK!uo)Frk_QsyZs1G)e)(&f^p&>l)5sBALv(cKDWhOr|XAFsjKERGFD6 zG&F!*N{i^FljA9Ts;}JBt8^MXU8~Au)IA^Rw>(rxqS2G~qOqF)@{wsQLT9uwKgqq> zO0QsJN{a}Ps&k?X3>z;&$==YoEpse#)D}&HsxxSaoFs5G6|tB)ETj^>pa))r zmr=_Lw~S1;3@n5kyw8}ibko0{bFW%M!X9}s9F#~Hay25jJ@WIVMnKB5X^bC(DbFc{nJ;O?Koi%aaR8o45(gB&6yfPW&>8y1Y)AO$BMecp)MY z@yFJz&Kabk7o)cV{7gLpo*Ji-&`{ghD8yG|bN< z#Z^qAiE>HLqY_-K6Huy85w*dg_%EVZLKZqF+WRy6Xrmg6IsS{r%dEX36wO#$8X+sq zV=TVAp~{gut08d>40)XBc**LrLW)6%iAs>9dm=7uI@0?@#nPG+Y>vpICJHI2t#J;A znoF&-Qf+IhZ!5ph6VptgzyL}Z5gXCg3<{6b#rZ_W7abg%;JX|ozV^|Zpl~0&SwhP+ zL_hSc9jZ}bVY}p!x2&`~BdjZ8(Ww++LdTdIg80XHLA1sjMW?%%r-P`;@zMNR^$gF4jo7rTtv7NhINH&W+@>GtM)s2#wE&K1Ld8&QKCIHP z=itpU+%UN`&grqNE#*9R9Sj7T3kEZYh10-xji%+iKulc6sOvPj5YQ=wRDfODGBLN4 zJ3NKl!#o|t_vBa~te0QCLH+q1UBj)-ycxOw)1#EjvC8yJ1e{T}BA$xX83%c&9zL6BNmzRzXK*E_L0;RzT$SOL4QJiM16#I@BO zyk3c|Tf0%1syB`NPTFBNH|jqW_i z+)L5kL(c^a+d5MbfpuLamYukBue7X69SYQ?$lV&Hy@;H#1N>2N;*<31SFOV&QO&|q zTqY2XGOr2aGnNqC^qRvZDol#J4_@BI;@*S1DAL22frw-2;}*x0I4h-^#stxXsNtpj zyN@L)Ah8cZb+>t%t5fh!AH2*RyuW?1Vy{3YL@ld4I>MpRU$b4c+bT_|Jk1t^GeLB# zbs|qe9k6X`)ZucHCL&)-($Z`(S-N?Bi|cVJEEON^%3ukU7F6UqRTK{LolDTuO`N35 zQDq|Z)xzWSFzsT)7)+I*BLC!EGzy#8Tui{jJ{Y+<_qL9*dednGef z=?j$3YcF!QQy%4u_5W+LeYrZ-xzijzu^ml}48$rfLhfA8yZYvdY*C=Gzo7BOJrQb7vFlBStB~_U_MQRB{Te2!_mBvD9`2r4183EMdn|(c=fIyt$TZWPY+K zb+U}(Pym0fCY^_*gS2LD`HX7g``7fQ3 z5do|zlZv@M1GjOgsxck!@ufIN8Ep!4W`FRaA8Ez6G zwmQbpv+kfOx@F+(zDzk<-w5vC0BsB^%w*oa*;Fg*=O?@q$`-4}MM;#^`m{{xsj zDpdP0(U+d1R?d?Mu4Y)dMDeSToR!dJKnzgjW3Ril}xCqTjm{oH&-*vM9ML@d0cy3nSr~T^Pvh`*jPSLL=+iOi{09HBO z>A~MIScLtXC6-q9q2|5%Rb3#a>9Nf{W~{LztPintXT$?0xBd0WAS|$Q6-lkCCuc#O zt=HgeSy^`(sS?@+WzOc6xa>311Nl5zM>fUf_vg~@cSq3axoU*s4K2S?UjJ`+)F?=$ z6{T_;j~oY*pl~6IJQ|_l5I4#2uL|4M(u4&`YfEvkv{u3*Rdb9mszV_Wvz=K~si)`6!-n zq2EnitVQ5n6M6ep{8j_JL#*>V*O$|^iJQth?X2BGT)-U;{!jjPbSrUczp=f)pWp)~ z;_a$dZ6M4=V=l|vx~A7CT6KCy@Z_a7Cg=Kjw4Q}t$)R`BGWPTc;WW$bK7eR9FPXq$ z^X3Uecu=9jgaRGTLzWO>GK%x)?aQcfBgc*&KY|P?awN%;9_b}iW^yIVmM&kyj45*_ z&6+lE;>@XYCr_Komi_E0bSTlH8>2=0sT3&CP|A{qg0^g#DW=MtT1}dC88oL*r9S;B z6;#uuW`RZn6|F2&wP%@HjVl)GS+h~mn%yduE8eY2)AA*I75^++!KZ!-jtf>V-n&)* zE?r!g?o_hN$PzyL*zYoZMn8iNT{4=~XrfP}PF<4T!HEnL8noC>9>ItS*$ot!47Wmg z5Fb{|y^vvTg}YlLe|<1E?0NEx>yF-<;B$k%r_VDey`k{p5R1oVzC5{dgwMYx6h@x- z?DDa3*N$ymHgfIAF{;kLQr~d>{{I6QpnwAsSYStZ8JM7gCou)qVSLqv7lfR_HCcs> zDf8fFXDyakhCpe^mxEztHJFHfaY$8MZmr0dT%3_8R)c|2Xjz1jQFc{ih3VzhS#I6M zB3y!*wxE$mBAFzC*^SpuMa?PaU2+i7SKD>sJ;WrFRR03^+LOXvC#85%P9&a`3pw=U zmr!y!C33!fIm~%#%649I_F;*glMLB+5S&>GbR9#}!H1ucsAcKdp^GxwsH2Y}iP$ob zQcBciP(`>Qgp>*96=opHNaABt{S;SQo7M%RTsbb2)>=QFx}%4HWd<08m;N+rsF#u2 zYpJDnMdDarO=y=^pz?a7goIT{W2luv8!b)xu-1;D((>dcbaraVWkqJTX_1`?op}&D zbecOJLdYoho1X7p7p|NQec799X|8J=eC-(ouD0k+MaqS-z@}QlW1OqZBP8Q z=CH&QQ(Upd7h{~!j$z%kRHtEW6|%BAzKEHR#fQ%L6j_`}B^j=*O6u`e6EX#uj;eZ` zvV=>yN^;A%28lCUzb=Cnkukm~$xInZmg-G-e);oXUx*KIr5HF9UlSKikO^EsS!S(4cu;b)smxOi|v zr|8u%x%Rl^lmAm*x#gE@wANlfQHIvC73Rp8Td!*MX@np1#p+x!^O_l5e);vFq=fzK zxu~AkI%}$`KfRghS_$j9hc7cr^6(w9_1J?htAshWN;S&bLf1MEk}`r5tTw^_CTF&r zvrSa6oBnodcW{AwN#CARs?Bb?7P+^*-+_nixAut7quxNgF~=?85@C-%15*z5s`rs< zHOzntTp$A*=)lkDqbZWv%JAZ%smG{}ccYUL^CWZ_7-5KIJ5y1Lat14soltgMF`CeV z6~eqsMp+}WN+^)!vKEd|DU^}Q0~__1M(HC<1$5xtxTmH5S&2Df6V4I0N4G68u{>sb z61Q+8kpC&pk0H3RPTII5rFO9EYkFgnc%Jw*^Dt?QvC&_Ok~1KttvA+^AUzR#u#Va3Tcu|WQ%f@ zNm?-lgN0NK%0?EVRE4T%K=~t*{NkwL%)^fiJL8zb#in=Ji+v1ZPm{vd>@y>L=o>%gmGAu&K+6l&2NG;oE=GwIFVG3+l`Er z8+;lHTjVn2!OoGYl&5A~grl)!l2bw(-cn-48C|swR8C_Z(P+0S&K!?~rz}}uV)e9g z7XPR)^@turx~V{V)bdO6Fyk)?x39WYsf)ic7{KNioWr%oe+G+^6}4rMb3uuG53$om z-*udWk;gv80bp&|B({?d>Xv@ColKs3&%A!F@e!}clqe9+|PNvouQZOk@1&~!EPVPwdQzBITAVPnsVbz0G3aQvymfCn;4xr{w;h=Y*S2)C@|OvDsTd;B{j7K z#hYf*wGE%x&g-o&TQb-kQ)mJkL7CTEsLcg$zMPwZ=i2x(I?H*FCEhe!G zBNSF1GX*P76!_rB++INujJJT2I38#tUkCppmng3b?-1}z$^ zpg5{9n(A5>nPQH)OnEX=i*SJ~EDfTJ#l2-NI~$qRt!&7|mFD!3jW)EhyztaICg}1e zW$2+m=GCV;h}wSYCOofsfcV8F;t*D*dF+eLx(=9dE=w=&@OL=cY3v!VX~c}uF@Slp z>2}l;;BIk?v^7m2E6*$IZ-YBDeGRvz)cT-BUUg%%I+>=rl9eHARd%Lsr&KnyXcBJ* zS-@-6?^0>i37W2xG|cXatct=`8~J3Lb{Xp0Ef;d{WUCN2N}Q$Sz3o&@H!$^VgzGb? zJ=2R^S=8mdXdS37%?H>W-_mo;LpGH|u{n$r2xNuY*#OV0zuGJR&R~bBagw)&$$$Lw z#EWipnOODcI?2o_NXgsR#c;>Wg)wiF@efl6?bse zy;@=LbOrT&n-Ej3Ryy4kblyP8C+~tfbGtg~*fXuqZtHR8ZPbLe`OaqAngx{KmD49& zCk*KG+xv0|%dnP*PmNn!Sgn=0Yi_fWJ9QsD={Yj)($8e-Aimio>y0820hdGppETKb zMPeNWFZULlN?Jwj^@QVSS?q4{r$U+BnQ@LpUhx!-zYc2R6M3nqr=0WvZMpT@&ovi^ zFk@j3u>UH=+QF3Uy9n%kFKanG&jCD5`&MjqX{V)t?`Y%y%$^`YV9dl5)EOV{A3v*EyN>MkI8u)6zbqC389u? zf*6E>7~nuX;(!>4!424>Bwzw8LKqdojc}yd=FuY#q}H(U3$LZrn-qj3l-5Ej#60e! zKH4Ka_MwV`3Yz4iY-fqr#YtFj!<KZ2yiVKBbr>wzOv)TN8okR-_%Saz4ck=in7LOo8xa{>$Rp#@des3-jx!gXZ` z0wQyX8ak~KcADd&G-5mSQ2zOs+qj&cSSCA$O?v1fL=MVwV1jI-!Ir>k!Wg`CWs}*YKp~=iUCxH5GYK-pEl=ok;*_d1=;nR8OqG+t(d_5m`xVv z3nkiB5JQTh0Yb$Erz8#Y-4&1O(1iqrXnu;L@JB*iDMTb@w-A%yvFSYQsj@bNP1a+- zG~`CA&pV@vS|BV$^;An`29X;I&D2!%i_|=p3ko34&n%0j)d~0S6LqEz* z;60|84h%3^1UAXh75&n{Y}=t~(aK53NKzz3auiOrgD?=Km?Bn1ROHYGjIg0m!Guq7 zSW^=j)<9yPKv1XwRVlsV>)KY#q*kaPVTin0?5^mjYA%DUTBS5H#cO_QlBO6PHpUz_ z#*$JXjuMNEAuLjgU0m2>7%;3p_N42S5KwZEiyawT6swf-iiLiWf`XKRsa%#kZL$eO zUE=95pg|ZwBwP}xB=m_e*d#yVfF!UHym@%DEO-~G;BV;K_#*cgtZ$Hlf<@*Q`gRO%H6YgI2m+7TseVq3ye%~BD`-MtboAgx7RUA(R(~FE z`ba|6Dnwll!-?u6Y$$JB+NEjDLtU~FK`f?g&Th>iM-JC#Uk-yn^yd*9Fa7k%=q7}q zU~ONHnO?dhVsTGTeJ3ZDlyKalH!+O&|BCU&BufdSuvjeKUQmyNDP5b;fpBx73S4g4b*F+yxQ=3G7| z8UTkt(4~DSCS*P)WCm?rrY?%oV`R>QP4)m?=A%aDpg`EMxzY_g?CF+iF`3wjw=P7O zM6tq9oBuv@ph(mV8T6$K|91oKD%y{%wyGtN10k=au8)04DU^1f<_($ zCe-DBwg&4W@p2S3xB}{zA&#s9ZI%o}ALrSXWZUN|*4HfSmVwsUDv%I`bXY^mIfbQY za;S-DU5ka4G@edb=&@A>@G=xKK+`B>R@x$m!5iSOG88fz$nRfRFkdumaqhJO_oO51 zqYtD(K##0GP6CA3BpM`a8=r4vTct86!~Z%I>(CV)U*n~X46BH>fjGni1s0ahN#RgQ zN%961!xFUivDMB4Mxp_l|5@ZLGlZ<3K@y)wU0TErH%U7(^%dP{5>vmw%0P#;d?wZdLi%_* zNpK~z?@|!6sVW6VY66KF^jWNh=V_#u8s-Mf0N$Q&ta`>)}vj zZ7*Jp3x^LMgbO3vP|x^sTqMsaF~v1+^OIk?DmV=PG7%#hMQytBewK?N*u>nNw9L&-fKWc=g5H z9faXmy?7tI9t5>IrgTH*4b*f)=r|K8FPmd!QBLja-u2rHXALsi)#VJ_oZO z19DuTs3zWwZEkeisX|INgWY z3>*?E!)1lb|Auc^X!(&4ou8dty;z%+0~4G@2aB)hff_Gq`SB<6EomLZxBGN!I4?94 z<%>6NKJueu>heLf`bHMSbmP(!Lv8>;t1%0M(4P3!=Gi8ym-zi)W=VUs6MfO|6>8$e z7^YKcl-0iJR=^hew=?lFTjc%5&QJ8TGT_ry+$5u;&N7I6>jXA55GRZ3WGq7_SkO6C zo?C_vTx&*j#>(CyZ*aqw>W<|J(k=kq&mcOf#-f1ELPtd1J`PY8o&-%)lLI)Me=Su~CW;Gzc;=;Im^| z#zKp`1516O+hb1x*@kGsT;e%&#YM=HFaACuN5yc=YC`q9h z9AVImT!@C`LW}J%EyP6eqQRI2g)Nj+5urhOF$KDIM-7jIs@d-?YD z`xkIv|G|R;D^s@YD`CZp88?o0_%Ntt&=5ZkMVT_>%8(yV-uyW-V$qrS?HUl5uLQkYjtL5eDp1h}9$6tJp!OarQ` z7!4%o#g`s(u&QAq3S*c83q%kqstO#6sDT8+u^^=&bdW%O{CkoxuArQf$||kA63Z;L z|70tg(YE{&OteNzk3IKlb51g4E`#s0>6GaV8tB4EqcZe9JI=PlO4^ON!;o7D6g5M$ zP8o&5Xl*js5Ss+h#~iH=v}IldPfa&vi^jAt-e4`y)^rOFR55N?Xth%yeG}F2j2rDb z&NM5})KycB?XWOyy)~>ZGsE>PxE$iOzZtiB@F^y7?1{r<5E|;Dn#8ziKOrBA={Kc# znnx1ipzTT~lO94tp&ng4Dw7o*T(QJ~ev;%|BR3jVn0AbM7Rae8a&}u{xspdWjgDL? z-Jvx4(b#n7VJF>x5o}OEf#d?#))60unBs~pz8GVOH;X3Yju}(W)k_7XuFEvn|9n$4 zRhjG4xk*_IO*1%83iPuyqFV;eWe@|UILJ71?F|o=ORdaQGXaiH%2HMaI2_W1?z=j5 zKCHZG80|qi&oG-zx1m`UFV*r=R$5TeI%SPkFFjscF@4l#8*aepL9#@Kk)5$A7Nczm z2OF)Dah`!UB1z$b7^T--rX-2zrk)lGqeN%XDAL4av(n8WWF=Quq@Y^-5n+N9EHLzf zUc{kDhA*O!;JSfCl0{?2j;;CTLOOM_7tsjsuou%nwKw1lTLx-0s2H<6c3mQ<{V{3H`kiBNa2 zvcVwruwD=8$wZ_@ln4$ecnutkKCmK1D_#+cSyW)kv?#nT#q2QW0br~MHMWx#O;u;= z9&jj?#_?2UAvgfr&Nw2S>qrVXVbBEGbmN-Y+zfj!nnZd+vMH7&2USo*4VhA<3{8v* z4agH)_jIF)G>YbA%V+sBC#iUqsrPe-GpIi>1ioP%zBzWF)bp%8KihX z+eZL~2Wn!Nq#N^RDVRA2dEkT0DHhw@z(@(G^w7$`*cp|a$f&vx@#qO@S4*r=RVF^_ zmk$~SCR!^A!KDi& zI0#TyFd@HwQ5SG?7RgaC(IYt<1QXstsw)$%n~-=lnJP4@Q42(%x*lw=MZD{PFal9Khzq*PVnQ_%*1n$g6IP7~V=U$2p^$y7wp zut?y+de>pyRQ|MQ<170n6R9Q|q(u5#)`X`yD`jMoS+>$;oO(;*=~xxJ%%G?G&_vP7 zCW~-1*4f$eZt0E|QAdQ85;gx=Hw%8Ry!%?Du?nl-lTIB>{*53@7lm~P7O>vHX)k*v zNr?u52Dm9+af@I4;*g4UCPOyaCHHSS#_O!cZL_kG>8#|OywhYj13c0EMzW8A)O#Fy zrmb?wRtt9S872(K`W<+Ua$tZDpjq`pEp6)Tv8zx){SYKn(c2-jGApLGPI0y7;rvDxA zfe$x^1-}?ZsyMlbF;!021j<-B3Q=SW1*=eObXOl8G9x<`s}EB@lp|(GvYE1Zl&r?Y zV-IHi9F0Op@AAz*IWzyN?>rbeer3wLIyQyx52VIzkf6?O?rTQkf!_S1>lUlb)~(8W zA0F{9!yDd5L0u2SPPf+)n82DQ)>K@HeQvq3sd@k0*3~(bSPm<_ivB=Jl^wZ=v?(uXtvkUdT&R;-M(J}<=r zsMe^%+ElGg%%)7Vrd0;2!y1YH8slv)hRgJcSg;A;Dnj23B>0$wohZ$g!fAsRj4A#_ z?-~uOyzFnX3qoWtsgeTjn4%({==}C=DX^(-l#0_TE$jkk1tEm$(#z9E&ZAy#^iAfhhNppPlgg|B=lUE~h^U?+(_C)0>eCfLEM0!&04 zELjdt1?x_B(vEh<>_EbA5{+n=RxlZAslX&L;Bcbr+ONV^#1Q{;Q5V;O=XTL9kZyng zC>lO+P~Ip2J@3OVj|;0zPzt%49l?s8%nC}jJDu)2Z|6#G#j&#V=B&_QgG!pQ9%Ptq4l z4<*~e<7^{s)F_Q`3iXI}B^ z8l&+JRptwaODUaWCG&#!GDaVKCF+bSbmnacBhp$ZvETnnC&3D?s79pu)Tt(p!VOmG zN4oATH%MPx=peM>Drkw7Udipgl0(EyK)kCI9Z@gY4J}(_KnOzAv}{DGk}z z$s**0aaK6c^foMID65Pn(*RMgXdo*bJEJ^SgK20;0Z>Pitl-49x{>L_Q zsKn7x9e6XB?aL?vpIpHi>DuN^d*OfCcU4{ah#RX~gA zDljQU19?Wy3u8?`xx_O@R4srn(~vWBWHAas#}z+_Mb|Azwi6S_vk8lZBgIlgEKw=m z4A8<4IU91FkkBwWWJk>pM{j9^WT%KOA~CaU!c0_3D{dLcXiE3NxT0)oQq4N_Pec90 zpK!A?*b(zEa2)?o@dzjs#+1Y8a6+SzJ!Fz)Ub5&4sC^hv4fn4yN6zvxGojRxl&(}z z>0%Y##afcHbq-VDa3n07>LAxGQK=3mkYq=>E-Mm_oZvFAWRO72v)^vSQ=1Ad9|ACW zP;WTZNA?jy)Qv#oVLqM9BnMSiE6i;M^(p`NkY!fSIh z5m_0uPab6$!L;^r(l?#806i&U*@i1#wTp@ginI$5nGrJ1)sj#nI#nMsBZsB~?`Qmf$ ztoHf9Nk$chNjU^zur4m#mUxS|N)W?DXOkr7dH8ML_gP`(77!%~JScLU8tl z1+i9k_oHr9FmwkqU0pC*<`QoRrczrM;#P29*r_R|Gg`9$wg~%Gf=onk`&Vsnib zghN;_=1)J}#%5EGZwC=fxoxFt&(>Bi8ZDDH&%`y$Hz<=1DzWWL(@=6l)Oe)wj*zlU zC$~36DNpBiDj{}!-lSvnfk@^dEPUmId#6SP#ApTLcg<6Xc$Zu?v0QDpNI*#VvUpfz z^tx^c?Q--l%`;)1V!F8VM`LGo+nB+SFg$PYJV6(mo>YYU*pKyMGvJpov(;K9bmvM> z4$H9tJ(Os+29s)TSCuT16M2Qtu_uia zq4t)tj_+7;VUn|{s1Hbg&{h9fo45Hc%#iSmvsiPMHk+eBC)aSF@rNx>aL>6jIX2iX zZ}Cb`Hcs|$HS_Z{aELE3OdAk-@0L714}1jlZXfw?&7%Ydl`7#Tmc_zs(RPaAMj0sL zfI$+QAaaB6286WODG2y?pZ01;m7Q8Kr0r@&v{ObKFvUR5y!C7Pt`MBn2 z#XJvCWd&|CNkDr}=P0&9bMEuFI&H#t<&MsID=TqD*#e2R4pU95Q5#sNO;(!2TiHZ- zsEFR8*wg4?r{N}##cv1=8~es}-7HdF)ze^<FmI$OG@?Zs zHLc*&b20IOWY-7d%^-@~x#$;)EB_n5;l?Ee`6LIW4wct`09OD#Q)Ml=lG_k*+tjl| zS@td&ho_RCS*Em&kxUVE05|Tqq>}$+C2~EPzV$Q263D$L2Dt6*p?M_;`M2r{b3jrx zRHxfK?d6Hk&iU{z)1Wi2z&mvJ`XQDj67PzH)H@>WYO$Sj-|(72aD3gy$zez>qJ1yE zll*u7$3E*}$>x--_gS6WWP2awWL0j68&6re(W(oGv-<#T`AHM-40TLCH@YW4eUBQF4;TH^8;J zdhgFVBGgY-OsP3}lb1Dpc{mTFmsa9*CUcuW*AUirxJ#YU`Tjoaw!Qoqm9jVizGCVjD>pofhu34w+iBmfxf|{wT9AO7xkcFxA^Y;u z8f*x!!r}1s6u)fD4*$K~zVoqbI#f07Zj9c#zmjN?_FS5?9ajCY>doY@9#=}fD!KOq zx0RgH(XwCH=z4+&WK9_xHDwsQrRg`I|ZiCNlqgNCX?-iV4=|?Vl zUimeE55$Gu74iM85ec83e5D;&AM0bEFkFo>;Wj`MG);L@DR zhXv(9OvY{@L3s@cCVRMXUPp`$_3ax;vZTqAC{wCj$+D%(moQK2nfFh* zr_Y~2g9;r=w5ZXeFQX}2wp1C?r%9VU$sdm*mR%unS%g{E> z`gJSUw_%l?RmQfdS5Rv6F2x%cu2-;BuY&Tr7w$5=Zo`6&#*{I%vxDU>Zp<|l)x?m| z^0gdxYpBVQ+k(wX_^{N|s8hTAoVKg#*FGH9q< z0xdf1$V8iY?&86Z|E|~(w`}1Jtw%T5uzK}&%&jjcn7w?#>>ME){4QI0$BX6%Zj_h2 zI(pz9)mH?MU-___wFM~PfCLt3;DP@LCaBZgRtq-*iv(eMOcMn9d=<@d`&pv zUzEkgmS7-exR_mdUFD%yrmU#dSD~0iB8MOL)nZvGves2(BO0a{To{%J;)z0%6-|mh zwx-ux5H^XRGI2%YnAceu97x7x_h+926{jYid@dB8b?nWS<)oBWYU!nzW~%8; zjL8+&rl7)vVOtq`s+5d}k?P@zIxe$eWoz|ipfoXf4p zrn_y%ckX%g-dT{Kv#}@dm~1MlQM=?tG_P#)@!O_)fr^)?n7_>{XKobb+fH#?PW+yl zAWeMdM&fe&8a?xL?D5DXmu&LMElFr1%GM6K6=GfeYS&Vp$(q?>Rh398waeUCBWs}v z#+9vC6`ga?IU6ZgY1*=dr|5msQ;tF+Rkw~DYJU!aPC}A{zun+Z zAP6y6aw2yy!bOK&7I~B~T30@uFt8vU450`|C_-0}ut`#L7G`)=8X7H&XpQMziF$OS z9%aa7crn(he%Bx)EzeWOvtg0m0+`M4>Uv2E+NyHK!=540db>JHg@|~4j}D@})txRqB0@04ljP^yr4p~>9PDv&V?h-S%3SfOP?&im!nhV?`k`plA4f}R(V znUgur(Mh*iBzqgZ@Qv$je%-mPE|Zl!`P;jFqZdYAVmJ zwrId4sfQq|Dz9u3#Kf8z|BQYGv&@JH!ojK$LW?<;RsnH)OG{m0T0>I=^SC4o-ilGi zqF}wwxXAV`?oXXmrG-&dqt-TQU3Jz9;}M&t;d;}&#vOHQ($_Z&%OR#Lx)8SwX(GGHhv0~&uG2~!M>=&~KS zdCN4cZXG>47k@NJuMKX8Tj@d*h#im$5~3G;U#|FiB+8sApFIY$MOKVAVLdOr z#QB|gTIrgAQZGH<{{=YkE>||vj4qoCX4LAc`)=rTj#S~DW_C4@AbCcnKIqYo*3l#1 z(+;@6%japD?qsh_k+h&a1PZ_2jMDqap^}!l6vim2;k@PKfDt?v)JV;EgAOTSyu#pD z-?&Jpbz-eK?W#}va(8NT%MVZ0yO6deG(s{AiCMkc;bBzQubyS8w)R<38hld-4+~A3 z#hQ{xoHI)C>&>aMagNhe6M@YwNdTM{hYFatM<2LM`c0{Qb4eio^UXVZV?R97*}Y6X zsM)bWUJy0rx z#81ZZrMPnGXsbuHWt=5RB0l-lpvXOwiWXIU0g_91w=0+%ztmd6>|99MnpXXMw7h+8v2SPF>!(YY8I;y+Vd$>2*4ktk9}939?%ds|0jS1s1M3e zfC#7z{h!m?Ug- z(OZRP|6*TvAke@Vosu&ofrOt?K{m6-EHKAl6BSb`#wyC=G8PqW4Z;;X zBWtfUbvJf%n#6k2(=0>8VIv1bh%tU*7&dV+GIzlwz(s{~VG>P&XvQ`)mJxPDND}4s zh?2-tRbn^uH4<*+B_$C+m$(o7#(1is50;2;lURzT$St%*b4GYEPi?6?m+s1PKfjyYHo&IC8{$b$!H z3KaWBb|cY8GuV#*02z=4GKj{;b5bXZc_oOxlSPrm6Gvu-+}AvkwKG}~ji9tro)j9Q z6*cuoE1mRncDPY4bYj57P@L60x`IhaLVZ{vHC@<4t>zb?@)k6OWC9r~!m)ohsb~Mz z4ggXn&jb^hS0(@g5qT68|Mr6m0U$W2lRNp8P&qsM;25j8kmG1J7Pm~D(n32ykR6FV z&?qx+fs%kYJbiJDb69aGvOCn+Le#^BtObag1|uQ&BNkRHGNe74RF-N3HsSYCtC%Sn z1r|{`GVM{A0cUmvAu{q9H}&w3Hc^l8I1-{5d5fuJ2FQ=@D4Fv>k8y*Tpc$GsnR}|@ z6JD8?l`($*SD{PUhkO$fV`V`sWZ05>=$e;7EHT#=C5J>xgoZj7mv$+9(#SPJBU!eh zNgSd>9db%BVlB3Im7+N*-lBuiNn8N-E?d`$M6qvH(up`o8zk{~{qd8WSe@p1o~L*u z^*4)CiHk5Hi*C_U7G-HiWHey8J=vIyW(kNa!f-_Ql5&|L`+0KNhnz5Em!-i;w}vYi z`I4mpos|-3=$R??un-fvQ;G?c5#lzG7+&<~B?NJU{iK~2TB0U8Z4<|kRCJ7tqd*#@#Kjm`ZgJ_sEMIjuI>Zu5Vqxcc3qI#;R+NFhIQK_0GtlFwXF-Ok^t4t;yw0f(! znxuoqp1EouE843*0THGOtf!%&#CojA+Cev#tOW8s%&HS}M5)h;6yDOK)Bk#{*jh5D z@@So!twlkI-ue>NA+0qPf!8s427zVh3OR^_t`s<|)K;S+O0MBrulD*Nq+*lz8hc*4 zuPA{Z_NAC2112D}gOWL=^*E(R89Vz}u>Sh65IZTPDP$2_u}2|_Gy$(##GQEZlXhaQ zWMZvnM33SHE{OsW^x7m18xj`VvMx&?Gqo45`m!`Tga*hC2wNs1>Ny{(P6)fO{Rk!| zo1^iFZxl!=KWK>#TeD2tv`ArdPOB347qtN;fItWln+T#J>k)Btc}NL_=W4J#i;0{m zo$nYjDND6#yS7-ANo*^1hxWF}1e9#$qt2v&2f~>H+ecfAWnGlEIW}RnvN5orDz}Dv zxG&Kbj|QO?+Zk*dE+>R%275Ojx^GjWm?S%*IcuS0t1;*k6d@}zAoH1s|697I+Y+?Z zt?ihvka0FcqPFTILfpx+l&Q2D%YQOBluOIEJ^G!KX}4I0v*DSp>AJbUd%DP*yeJ`{ zP{O#Jx0SRwajTd+9)mn<+a7=$D*iXNLA#EyGm4$ax74{0N^7m(S-0d%x8tk4?5n(+ zp)IQ0d0VLrv)U=t!mB>wybwZ#Q>(Vlbi3BVqu)Y8A|Vn2NE4IW9}3%pJF6WCo0I_D zz7kBcITeNY_Z3>IqAo;#n6)Y3=pb*4vf_h-$E$CTnY(6}wF!HVL_5JQ{K7@br$b0H z4@Q4enG!Y^deF8llLEhT>rB~;v=q@g3lYRHe8fmRq)299de#2Zvsh$3V;mu$Ycd$?z;9f~|8^{d zGo!|lRC^n8EywD8IOyC+jscd8xbqeuoJDHVn8W+9ElSTE=uP$7z3?4xxO*Rlr zS;P%}()1|ZNKq5aCiBo}K{EWSP_7sjkW7mulE{NwAilf1p`6k_{nO&3NjiKsSIory zjFljaTQE6b8>z@M;cuM$8d$ZyKwZ^VEjy~H#U^8GZCX3Bw>%h!TM)&{y$l@bj1rGo ziF>Oi5q#Bd{nnV`7Q_rH(eTgBdyBzU(QxfL(0rLc;eXv((m%S_gk9Julhmlk$HN67 z&9ajv=+Oj>{Eu&Dz<`oH<8d6eMVU2nnx!AN_JJrgVIXb@L<()ve%fYd|+{|syJd9i8 zY}8Ld42ChiVnNo;9YQI*gALTP3Ji()aMsy9-sF80+j@(~nP^ZPb^N8*Cedt@c7-E$ zex+UBXG1tD>?ZcT-~27HT)1`8+rPS16@Rsg#8YGn>fZe=yC@7CANrXEyxHuKK|oCEgs}TKIBARSf1rt zzU5rrVm{_%Ugl1zgkI=|e&~pv=!(ARjNa&u{^*b%>5@L_lqO#3mVW7&p6Qyt>73r_ zp8n~e9_pe#>ZD%krhe+Ep6aT;>a5=C|E~V(upaBOKI=(F3^yPKx1Q^`zUwzI37Igf zsIlw7of?^->&A}jnLrG*F6g$->&~9*zCP?oAqKcE?XLk1)P4h*km|}n?cV~r4j>#pwYJ`~=bAnAVVV!-Xxjssz^@6;X!IFRk-&hDvE z?*x(w-X8G%9`M;N2IcPVeh%+qpzss_?+h>OdMgXuLT#Bc^;(Az&x z?Kc1NdXDof@d@5O?3=;wG^CmIyT7Ndf5b!Fm66KBq!2hoFb!G_RE_I{Lb%_@b)N?3FUt4XrSzUuk0g{?I}SF#lGvljuN>( z5(p3NR<8*T-}U=I?Pp;2FfZ;cf$(9V_qf&gxSsebK@5HG@PLo&fy5b(og_`DAK zC$ac#&+Ey46W!kHga7cR9``EY@SA@UEdT9cFbRu2_3DlWlhE<|Fz~Wf4{osTXdqip zzwVN65}?rUr;ic?Z~1uM?O`zelTYo*a1zH~{L9Pn-){WK|NUZsCCc#o=RaK0AMV<2 z6UYDjsGt6#&i&Ir4Bn2#05M6-4KW3ApeZN@%|3<=>mf{tLt#WQ%KsWdY{*a*IkJQpMxt7dDleW9vn(S*wPM(s6x-0O zNxsB>mTagjq*lU(4If6FSn*=4g2i~fNi5Sr9FtZOE13z}Oo)(YCiI*MBHX+X^X?=2 zcr(M)3mYaxXp=SFG(E{`lBtZWYsS5O{{|jh_;BLIjUPvzTsct3o>@u`DQP9m8)!6h zF6cb9XJU3ihB=*3UqgWkGl|tl6QSjdCar%)==^K;_8ynt$N!&S|Ng^*B_>SCu9s3m zW3`J4GH|YfR+>n*_Dp*Xp=bh2$iaqODk!gldJuypO$Osh6Ep(k3pD;tL@`AbS7fn8 z7hi<&Flb6FD8RJ}l1o9iR-!A%eN5zWqSGMCaYp)90;QlE{ECnumOdG%!=4~YkSzIP z#4<}Qw_Hjvh)O!>rHK@xXQk$DO7gLWy1RirGwUj?pfVXEX1$w4Yg4a+m|O`iDR;sU zjkSDGD-49%JdI057iF|jM<0bW(&M^2V=aloBnTli3N-V`=gebGp*LjG#3LMrENHxa zKHT(9P+zM_ri6OxPN7aEk~CLccTG+(k2DofA&<_Ji72c@8`9^c&|+mNnvmkeK~>ZU zvM?jZc$+A}*Cf)`RRK8y*Hd1{CAa@vbI(OLUEquiN!WHD<8!PGaq22mF^0Jb!UM&a z5H*kD&4}Ih2pS131bH$Rt@zYsxM7EX;z~_xJHv@O8cF;!6N2-dmm!Gy{ZUSwW@RW! zj>9Ner!+yilOup1hB;=LXQsL475$TMBXOsru|||Y6ewDb#Yj-Rl3$XRC6gm0TGoSg zGLpB9Fuc-ctFKn{OoMHeNuWcOG^ilBuzi{(fxv@R3~4{c>Cm)?2015}mdr_0sjh9;C zPx9zkzfVVfI3uf;oaB|bf$^Sa0ENYF8lf4+V9nWB_+V*b0b zyuybzeINVNUb}3ix!wmsaBvfa43HMJiU&Y7~SV3CU8eig|>KCBvPLR8<})vgBGB zNy*Ue_n9!T4Qb2rEcTDmIZh zHqw!ggk+>5=0=eGNh1=$Ax?&Y$rT21UpY#~L8Mcxf?Tjh1Qe7E85G7v0x*)V+#41v z_(L$>OD4$>mktfa%6$y3gGUp?%hL2iF%9i;IDwKF;<&ZD!P1%k&xB?)gX1gqb;nTh z5!N#8uEMV;l&xjhb3?OBsR%eJ;m`*kySFX^1(u8NjWI3IZoQ5no$ONBsBc{{T z>W8WEv6PEcBp>T1LqbLs{}cN<5%lyvdT(kT9MX#b`z~T9kRp3xuhWL|$~G zFT>fzO?9eKLc+Q`q1*w3B4wgGx=+)m>9+5J_ClAVbq**eYq4 zFR@Rrm&I&m8@Rfu?ulnFtfWMWni1G7PA!?pph|f;8!>PwB8^p=IDuzTKw9=Sfzxbm zQ#47QOiqLWt5ZYYlM_wQgiyqK!%H&a%gcS0EFd9PY#q9^YSr(ZDuEaOpee6?M(Paq|XZu8i6j5+^1#f_3c31%y z*uV!yuv6%gU%2&p6mK{Zwy1)e_qt$Yl8Kw*o2`k1w7IT`_yk`6;14@e<27B2&XFAu} z&UeOhp7p$EKKI$re+G1*1vouuLKoW5hemXw6}@OiH`>vUhIFJQJ!wi;+R~TCbfz`E zX-;?A)1L-)s6{<$QkUA)r$%+ERlPE5R=3*KuZDH3Wj$+J*V@*%#&xcBy=z|g+Sk7Z zcCdv#Y+@JN*vCe8vX#ATW;ff}&n<>_w52_5YFFFZ*T#0XwY_a_ciY?F26wo{J#KQB z+uY|yce>TRZg#iZ-S37fcf932Z+h3;-uK3LzV*Fte)rqo{|0!#1wL?s7u?_nM|i>& zzHo*&+~Fndy+~OC + +

Before You Start

+
+ + diff --git a/docs/opengauss/api-ref/opengauss_api_0002.html b/docs/opengauss/api-ref/opengauss_api_0002.html new file mode 100644 index 000000000..a586e2010 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0002.html @@ -0,0 +1,12 @@ + + +

Overview

+

Welcome to GaussDB(openGauss) API Reference. GaussDB(openGauss) is a next-generation, enterprise-class distributed database. It is designed based on the shared-nothing architecture and supports both x86 and Kunpeng CPU architectures. It features the following: high-throughput, strong-consistency transaction processing capabilities, financial-grade HA with 3DC geo-redundant DR, high scalability with a distributed architecture, and high-performance big data query capabilities. GaussDB(openGauss) is suitable for core systems used in a wide range of sectors, such as finance, telecom, and government.

+

This document describes how to use application programming interfaces (APIs) to perform operations on DB instances, such as DB instance creation, deletion, query, parameter modifications, and scaling. For details about all supported operations, see API Overview.

+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0003.html b/docs/opengauss/api-ref/opengauss_api_0003.html new file mode 100644 index 000000000..98f3a169a --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0003.html @@ -0,0 +1,11 @@ + + +

API Calling

+

GaussDB(openGauss) supports Representational State Transfer (REST) APIs, allowing you to call APIs using HTTPS. For details about API calling, see API Overview.

+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0004.html b/docs/opengauss/api-ref/opengauss_api_0004.html new file mode 100644 index 000000000..b9be4bc23 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0004.html @@ -0,0 +1,11 @@ + + +

Endpoints

+

An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, see Regions and Endpoints.

+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0005.html b/docs/opengauss/api-ref/opengauss_api_0005.html new file mode 100644 index 000000000..e073420bc --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0005.html @@ -0,0 +1,11 @@ + + +

Constraints

+
  • For more constraints, see API description.
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0006.html b/docs/opengauss/api-ref/opengauss_api_0006.html new file mode 100644 index 000000000..731320d3b --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0006.html @@ -0,0 +1,19 @@ + + +

Concepts

+
  • Domain

    A domain is created upon successful registration. The domain has full access permissions for all of its cloud services and resources. It can be used to reset user passwords and grant user permissions. The domain is a payment entity and should not be used directly to perform routine management. For security purposes, create IAM users and grant them permissions for routine management.

    +
+
  • IAM User

    An IAM user is created using an account to use cloud services. Each IAM user has its own identity credentials (password and access keys).

    +

    The domain name, username, and password will be required for API authentication.

    +
  • Region

    A region is a geographic area in which cloud resources are deployed. Availability zones (AZs) in the same region can communicate with each other over an intranet, while AZs in different regions are isolated from each other. Deploying cloud resources in different regions can better suit certain user requirements or comply with local laws or regulations.

    +
  • AZ

    An AZ contains one or more physical data centers. Each AZ has independent cooling, fire extinguishing, moisture-proof, and electricity facilities. Within an AZ, computing, network, storage, and other resources are logically divided into multiple clusters. AZs within a region are interconnected using high-speed optical fibers to support cross-AZ high-availability systems.

    +
  • Project

    Projects group and isolate resources (including compute, storage, and network resources) across physical regions. A default project is provided for each region, and subprojects can be created under each default project. Users can be granted permissions to access all resources in a specific project. For more refined access control, create subprojects under a project and purchase resources in the subprojects. Users can then be assigned permissions to access only specific resources in the subprojects.

    +
    Figure 1 Project isolating model
    +
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0007.html b/docs/opengauss/api-ref/opengauss_api_0007.html new file mode 100644 index 000000000..5ec1093c8 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0007.html @@ -0,0 +1,35 @@ + + +

API Overview

+

GaussDB(openGauss) APIs enable you to use all GaussDB(openGauss) functions, including creating/deleting DB instances and scaling up instance storage space.

+ +
+ + + + + + + + + + + + + + + +

Type

+

Subtype

+

Description

+

GaussDB(openGauss) APIs

+

DB Instance Management

+

Manage DB instances, including creating a DB instance, scaling up instance storage space, delete a DB instance, obtaining a DB instance list, obtaining a specified DB instance, adding Coordinator Nodes (CNs), adding shards, resetting a database password, and change a DB instance name.

+

Parameter Configuration

+

Modify parameters of a specified DB instance.

+

Backup Management

+

Set an automated backup policy.

+
+
+
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0012.html b/docs/opengauss/api-ref/opengauss_api_0012.html new file mode 100644 index 000000000..2174df77b --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0012.html @@ -0,0 +1,9 @@ + + +

Using APIs

+

Public cloud APIs comply with the RESTful API design principles. REST-based web services are organized into resources. Each resource is identified by one or more Uniform Resource Identifiers (URIs). An application accesses a resource based on the resource's Unified Resource Locator (URL). A URL is usually in the following format: https://Endpoint/uri. In the URL, uri indicates the resource path, that is, the API access path.

+

Public cloud APIs use HTTPS as the transmission protocol. Requests/Responses are transmitted by using JSON messages, with media type represented by Application/json.

+

For details about how to use APIs, see API Usage Guidelines.

+
+
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0013.html b/docs/opengauss/api-ref/opengauss_api_0013.html new file mode 100644 index 000000000..7c20724a4 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0013.html @@ -0,0 +1,15 @@ + + +

API

+
+ + diff --git a/docs/opengauss/api-ref/opengauss_api_0014.html b/docs/opengauss/api-ref/opengauss_api_0014.html new file mode 100644 index 000000000..e1ba8ac70 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0014.html @@ -0,0 +1,29 @@ + + +

DB Instance Management

+
+ + diff --git a/docs/opengauss/api-ref/opengauss_api_0015.html b/docs/opengauss/api-ref/opengauss_api_0015.html new file mode 100644 index 000000000..10dd9b430 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0015.html @@ -0,0 +1,774 @@ + + +

Creating a DB Instance

+

Function

This API is used to create a GaussDB(openGauss) DB instance. GaussDB(openGauss) supports distributed instances.

+ +
+

URI

  • URI format

    POST https://{Endpoint}/opengauss/v3/{project_id}/instances

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances

    +
  • Parameter description +
    + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +
    +
    +
+
+

Request

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 2 Parameter description (for distributed instance creation)

Name

+

Mandatory

+

Type

+

Description

+

name

+

Yes

+

String

+

Specifies the DB instance name.

+

DB instances of the same type can have same names under the same tenant.

+

The value consists of 4 to 64 characters and starts with a letter. It is case-sensitive and contains only letters, digits, hyphens (-), and underscores (_).

+

datastore

+

Yes

+

Object

+

Specifies the database information.

+

For details, see Table 3.

+

ha

+

Yes

+

Object

+

Used to create a distributed instance. For details, see Table 4.

+

configuration_id

+

No

+

String

+

Specifies the parameter template ID. If this parameter is not specified, the default parameter template is used.

+

port

+

No

+

String

+

Specifies the database port.

+

The GaussDB(openGauss) database port ranges from 1024 to 39998 (excluding the following which are occupied by the system and cannot be used: 2378, 2379, 2380, 4999, 5000, 5999, 6000, 6001, 8097, 8098, 12016, 12017, 20049, 20050, 21731, 21732, 32122, 32123, and 32124).

+

If this parameter is not specified, the default port 8000 is used.

+

password

+

Yes

+

String

+

Specifies the database password.

+

The password cannot be empty and must contain 8 to 32 characters, including at least three of the following: uppercase letters, lowercase letters, digits, and special characters (~!@#%^*-_=+?,).

+

You are advised to enter a strong password to improve security and prevent security risks such as brute force cracking.

+

backup_strategy

+

No

+

Object

+

Specifies the backup policy.

+

For details, see Table 5.

+

flavor_ref

+

Yes

+

String

+

Specifies the specification code. The value cannot be empty. For details on how to obtain the GaussDB(openGauss) specification code, see Table 1.

+

volume

+

Yes

+

Object

+

Specifies the volume information.

+

For details, see Table 6.

+

region

+

Yes

+

String

+

Specifies the region ID.

+

The value cannot be empty. For details about how to obtain this parameter value, see Regions and Endpoints.

+

availability_zone

+

Yes

+

String

+

Specifies the AZ ID.

+

The value cannot be empty. You can deploy GaussDB(openGauss) in the same AZ or across three different AZs, and use commas (,) to separate AZs. For example:

+
  • To deploy GaussDB(openGauss) in the same AZ, enter three same AZ IDs.
  • To deploy GaussDB(openGauss) across three different AZs, enter three different AZ IDs.
+

The value cannot be empty. For details about how to obtain this parameter value, see Regions and Endpoints.

+

vpc_id

+

Yes

+

String

+

Specifies the VPC ID. To obtain this parameter value, use either of the following methods:

+
  • Method 1: Log in to VPC console and view the VPC ID in the VPC details.
  • Method 2: See the "Querying VPCs" section in the Virtual Private Cloud API Reference.
+

subnet_id

+

Yes

+

String

+

Specifies the network ID. To obtain this parameter value, use either of the following methods:

+
  • Method 1: Log in to VPC console and click the target subnet on the Subnets page. You can view the network ID on the displayed page.
  • Method 2: See the "Querying Subnets" section under "APIs" or the "Querying Networks" section under "OpenStack Neutron APIs" in Virtual Private Cloud API Reference.
+

security_group_id

+

No

+

String

+

Specifies the security group which the DB instance belongs to. To obtain this parameter value, use either of the following methods:

+
  • Method 1: Log in to VPC console. Choose Access Control > Security Groups in the navigation pane on the left. On the displayed page, click the target security group. You can view the security group ID on the displayed page.
  • Method 2: See the "Querying Security Groups" section in the Virtual Private Cloud API Reference.
+

charge_info

+

No

+

Object

+

Specifies the billing type, which is only pay-per-use.

+

For details, see Table 7.

+

sharding_num

+

Yes

+

Integer

+

Specifies the number of shards. The value ranges from 1 to 9.

+

coordinator_num

+

Yes

+

Integer

+

Specifies the number of CNs. The value ranges from 1 to 9. The number of CNs must be less than or equal to twice the number of shards.

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 3 datastore field data structure description

Name

+

Mandatory

+

Type

+

Description

+

type

+

Yes

+

String

+

Specifies the DB engine. Value:

+

GaussDB(openGauss).

+

version

+

Yes

+

String

+

Specifies the database version.

+

The following versions are supported:

+
  • 1.1
  • 1.2
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 4 ha field data structure description

Name

+

Mandatory

+

Type

+

Description

+

mode

+

Yes

+

String

+

Specifies the distributed mode of GaussDB(openGauss). The value is enterprise and is case insensitive.

+

replication_mode

+

Yes

+

String

+

Specifies the replication mode for the standby node.

+

Value:

+

For GaussDB(openGauss), the value is sync.

+
NOTE:
  • sync indicates the synchronous replication mode.
+
+

consistency

+

Yes

+

String

+

Specifies the instance consistency type. The value can be strong or eventual and is case-insensitive.

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 5 backup_strategy field data structure description

Name

+

Mandatory

+

Type

+

Description

+

start_time

+

Yes

+

String

+

Specifies the backup time window. Automated backups will be triggered during the backup time window.

+

The value cannot be empty. It must be a valid value in the "hh:mm-HH:MM" format. The current time is in the UTC format.

+
  • The HH value must be 1 greater than the hh value.
  • The values of mm and MM must be the same and must be set to any of the following: 00, 15, 30, or 45.
+

Example value:

+
  • 08:15-09:15
  • 23:00-00:00
+

keep_days

+

No

+

Integer

+

Specifies the retention days for specific backup files.

+

The value ranges from 0 to 732. If this parameter is not specified or set to 0, the automated backup policy is disabled.

+
+
+ +
+ + + + + + + + + + + + + + + + +
Table 6 volume field data structure description

Name

+

Mandatory

+

Type

+

Description

+

type

+

Yes

+

String

+

Specifies the volume type.

+

The value can only be ULTRAHIGH (case-sensitive), indicating SSD.

+

size

+

Yes

+

Integer

+

Specifies the volume size.

+

The value must be a multiple of the number of shards multiplied by 40 GB, ranging from the number of shards multiplied by 40 GB to the number of shards multiplied by 16 TB.

+
+
+ +
+ + + + + + + + + + + +
Table 7 chargeInfo field data structure description

Name

+

Mandatory

+

Type

+

Description

+

charge_mode

+

Yes

+

String

+

Specifies the billing mode. The value can only be postPaid, indicating the pay-per-use billing mode.

+
+
+
  • Request example
+
+
Creating a DB instance of the enterprise edition:
+{
+    "name": "user1-v3-independent", 
+    "datastore": {
+        "type": "GaussDB(openGauss)", 
+        "version": "1.1"
+    }, 
+    "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in", 
+    "volume": {
+        "type": "ULTRAHIGH", 
+        "size": 120
+    },
+    "region": "eu-de",
+     "availability_zone": "eu-de-01,eu-de-01,eu-de-01",
+    "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329", 
+    "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189", 
+    "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f", 
+    "backup_strategy": {
+        "start_time": "17:00-18:00", 
+        "keep_days": 7
+    }, 
+    "charge_info": {
+        "charge_mode": "postPaid"
+    }, 
+    "password": "Gauss_234", 
+    "configuration_id": "b000d7c91f1749da87315700793a11d4pr14", 
+    "time_zone": "UTC+08:00",
+    "ha":{
+        "mode":"enterprise",
+        "consistency":"strong",
+        "replication_mode":"sync"
+    },
+    "sharding_num":1,
+    "coordinator_num":1,
+    "port":8000
+}
+

Response

  • Normal response +
    + + + + + + + + + + + + + +
    Table 8 Parameter description

    Name

    +

    Type

    +

    Description

    +

    instance

    +

    Object

    +

    Indicates the DB instance information.

    +

    For details, see Table 9.

    +

    job_id

    +

    String

    +

    Indicates the ID of the DB instance creation task.

    +

    This parameter is returned only for the creation of pay-per-use DB instances.

    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 9 instance field data structure description

    Name

    +

    Type

    +

    Description

    +

    id

    +

    String

    +

    Indicates the DB instance ID.

    +

    name

    +

    String

    +

    Indicates the DB instance name. DB instances of the same type can have same names under the same tenant.

    +

    The value must be 4 to 64 characters in length and start with a letter. It is case-insensitive and contains only letters, digits, hyphens (-), and underscores (_).

    +

    status

    +

    String

    +

    Indicates the DB instance status. For example, BUILD indicates that the DB instance is being created.

    +

    Returned only for the creation of pay-per-use DB instances.

    +

    datastore

    +

    Object

    +

    Indicates the database information.

    +

    For details, see Table 10.

    +

    ha

    +

    Object

    +

    Returned when a distributed instance is created.

    +

    For details, see Table 11.

    +

    port

    +

    String

    +

    Indicates the database port, which is the same as the request parameter.

    +

    backup_strategy

    +

    Object

    +

    Indicates the automated backup policy.

    +

    For details, see Table 12.

    +

    flavor_ref

    +

    String

    +

    Indicates the specification code. The value cannot be empty. For details on how to obtain the GaussDB(openGauss) specification code, see Table 1.

    +

    volume

    +

    Object

    +

    Indicates the volume information.

    +

    For details, see Table 13.

    +

    region

    +

    String

    +

    Indicates the region ID.

    +

    availability_zone

    +

    String

    +

    Indicates the AZ ID.

    +

    vpc_id

    +

    String

    +

    Indicates the VPC ID.

    +

    subnet_id

    +

    String

    +

    Indicates the network ID of the subnet.

    +

    security_group_id

    +

    String

    +

    Indicates the security group to which the DB instance belongs.

    +

    charge_info

    +

    Object

    +

    Indicates the payment mode. Only pay-per-use is supported.

    +

    For details, see Table 14.

    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 10 datastore field data structure description

    Name

    +

    Type

    +

    Description

    +

    type

    +

    String

    +

    Indicates the DB engine. Value:

    +

    GaussDB(openGauss)

    +

    version

    +

    String

    +

    Indicates the database version.

    +
    +
    + +
    + + + + + + + + + + + + + + + + + +
    Table 11 ha field data structure description

    Name

    +

    Type

    +

    Description

    +

    mode

    +

    String

    +

    Indicates the distributed model. The returned value is Enterprise. Currently, only the distributed model is supported.

    +

    replication_mode

    +

    String

    +

    Indicates the replication mode for the standby node.

    +

    Value:

    +
    • For GaussDB(openGauss), the value is sync.
    +
    NOTE:
    • sync indicates the synchronous replication mode.
    +
    +

    consistency

    +

    String

    +

    Indicates the GaussDB(openGauss) reserved parameter, referring to the instance consistency type. The value can be strong or eventual.

    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 12 backup_strategy field data structure description

    Name

    +

    Type

    +

    Description

    +

    start_time

    +

    String

    +

    Indicates the backup time window. Automated backups will be triggered during the backup time window.

    +

    The value cannot be empty. It must be a valid value in the "hh:mm-HH:MM" format. The current time is in the UTC format.

    +
    • The HH value must be 1 greater than the hh value.
    • The values of mm and MM must be the same and must be set to any of the following: 00, 15, 30, or 45.
    +

    Example value:

    +
    • 08:15-09:15
    • 23:00-00:00
    +

    If backup_strategy in the request body is empty, 02:00-03:00 is returned for start_time by default.

    +

    keep_days

    +

    Integer

    +

    Indicates the retention days for specific backup files.

    +

    The value ranges from 0 to 732. If this parameter is not specified or set to 0, the automated backup policy is disabled.

    +

    If backup_strategy in the request body is empty, 7 is returned for keep_days by default.

    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 13 volume field data structure description

    Name

    +

    Type

    +

    Description

    +

    type

    +

    String

    +

    Indicates the volume type.

    +

    Its value can be any of the following and is case-sensitive:

    +
    • ULTRAHIGH: indicates the SSD type.
    +

    size

    +

    Integer

    +

    Indicates the volume size.

    +

    When creating a distributed instance, you need to specify the size to be a multiple of the number of shards multiplied by 40 GB, ranging from the number of shards multiplied by 40 GB to the number of shards multiplied by 16 TB.

    +
    +
    + +
    + + + + + + + + + +
    Table 14 chargeInfo field data structure description

    Name

    +

    Type

    +

    Description

    +

    charge_mode

    +

    String

    +

    Indicates the billing information, which is pay-per-use.

    +
    +
    +
+
  • Example normal response
    Creating a DB instance of the enterprise edition:
    +{
    +    "instance": {
    +        "id": "ad8cd1440aa94a02ae4580fcbebb3143in14",
    +        "name": "user1-v3-independent",
    +        "status": "BUILD",
    +        "datastore": {
    +            "type": "GaussDB(openGauss)",
    +            "version": "1.1"
    +        },
    +        "ha": {
    +            "mode": "Enterprise",
    +            "replication_mode": "sync",
    +            "consistency": "strong"
    +        },
    +        "port": "8000",
    +        "volume": {
    +            "type": "ULTRAHIGH",
    +            "size": 120
    +        },
    +	"region": "eu-de",
    +        "backup_strategy": {
    +            "start_time": "17:00-18:00",
    +            "keep_days": 7
    +        },
    +        "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +	"availability_zone": "eu-de-01,eu-de-01,eu-de-01",
    +        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329",
    +        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189",
    +        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f",
    +        "charge_info": {
    +            "charge_mode": "postPaid"
    +        }
    +    },
    +    "job_id": "30f2790a-a5b6-4a13-a5ab-733c746609af"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0016.html b/docs/opengauss/api-ref/opengauss_api_0016.html new file mode 100644 index 000000000..ef9a2ea33 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0016.html @@ -0,0 +1,131 @@ + + +

Scaling Up Storage Space of a DB Instance

+

Function

This API is used to scale up storage space of a DB instance.

+ +
+

Constraints

  • The storage space must be a multiple of the number of shards multiplied by 40 GB.
  • All nodes must be available.
+
+

URI

  • URI format

    POST https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/action

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/action

    +
  • Parameter description +
    + + + + + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +

    instance_id

    +

    Yes

    +

    Specifies the DB instance ID.

    +
    +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    enlarge_volume

    +

    Yes

    +

    Object

    +

    Specifies the target storage space after scaling up.

    +

    For details, see Table 3.

    +
    +
    + +
    + + + + + + + + + + + +
    Table 3 enlarge_volume field data structure description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    size

    +

    Yes

    +

    Integer

    +

    Specifies the storage space, which must always be an integral multiple of (Number of shards x 40 GB). Minimum storage space = Number of shards x 40 GB. Maximum storage space = Number of shards x 16 TB.

    +
    +
    +
+
+
  • Request example
    {
    +	"enlarge_volume": {
    +		"size": 400
    +	}
    +}
    +
+

Response

  • Normal response +
    + + + + + + + + + +
    Table 4 Parameter description

    Name

    +

    Type

    +

    Description

    +

    job_id

    +

    String

    +

    Indicates the task ID.

    +
    +
    +
+
+
  • Example normal response
    {
    +	"job_id": "2b414788a6004883a02390e2eb0ea227"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0017.html b/docs/opengauss/api-ref/opengauss_api_0017.html new file mode 100644 index 000000000..11f8ab6ac --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0017.html @@ -0,0 +1,75 @@ + + +

Deleting a DB Instance

+

Function

This API is used to delete a DB instance.

+ +
+

URI

  • URI format

    DELETE https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01

    +
  • Parameter description +
    + + + + + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +

    instance_id

    +

    Yes

    +

    Specifies the DB instance ID compliant with the UUID format.

    +
    +
    +
+
+

Request

None

+
+

Response

  • Normal response +
    + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Type

    +

    Description

    +

    job_id

    +

    String

    +

    Indicates the ID of the DB instance deletion task.

    +
    +
    +
  • Example normal response
    {
    +	"job_id": "dff1d289-4d03-4942-8b9f-463ea07c000d"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0018.html b/docs/opengauss/api-ref/opengauss_api_0018.html new file mode 100644 index 000000000..699046fe7 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0018.html @@ -0,0 +1,1309 @@ + + +

Querying Details About DB Instances

+

Function

This API is used to query DB instances according to search criteria.

+ +
+

URI

  • URI format

    GET https://{Endpoint}/opengauss/v3/{project_id}/instances?id={id}&name={name}&type={type}&datastore_type={datastore_type}&vpc_id={vpc_id}&subnet_id={subnet_id}&offset={offset}&limit={limit}

    +
  • Example
    • Querying all DB instances

      https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/97b026aa9cc4417888c14c84a1ad9860/instances

      +
    • Querying DB instances based on search criteria

      https://gaussdb.eu-de.otc.t-systems.com/v3/97b026aa9cc4417888c14c84a1ad9860/instances?id=ed7cc6166ec24360a5ed5c5c9c2ed726in01&name=hy&type=Enterprise&datastore_type=GaussDB(openGauss)&vpc_id=19e5d45d-70fd-4a91-87e9-b27e71c9891f&subnet_id=bd51fb45-2dcb-4296-8783-8623bfe89bb7&offset=0&limit=10

      +
    +
  • Parameter description +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Type

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    String

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +

    id

    +

    String

    +

    No

    +

    Specifies the DB instance ID.

    +

    The asterisk (*) is reserved for the system. If the instance ID starts with *, it indicates that fuzzy match is performed based on the value following * Otherwise, the exact match is performed based on the instance ID. The value cannot contain only asterisks (*).

    +

    name

    +

    String

    +

    No

    +

    Specifies the DB instance name.

    +

    The asterisk (*) is reserved for the system. If the instance name starts with *, it indicates that fuzzy match is performed based on the value following * Otherwise, the exact match is performed based on the instance name. The value cannot contain only asterisks (*).

    +

    type

    +

    String

    +

    No

    +

    Specifies the instance type-based query. Currently, the value is only Enterprise (case-sensitive), indicating the distributed instance (Enterprise Edition).

    +

    datastore_type

    +

    String

    +

    No

    +

    Specifies the database type. Its value is case-sensitive.

    +
    • GaussDB(openGauss)
    +

    vpc_id

    +

    String

    +

    No

    +

    Specifies the VPC ID.

    +
    • Method 1: Log in to VPC console and view the VPC ID in the VPC details.
    • Method 2: See the "Querying VPCs" section in the Virtual Private Cloud API Reference.
    +

    subnet_id

    +

    String

    +

    No

    +

    Specifies the network ID of the subnet.

    +
    • Method 1: Log in to VPC console and click the target subnet on the Subnets page. You can view the network ID on the displayed page.
    • Method 2: See the "Querying Subnets" section in the Virtual Private Cloud API Reference.
    • Method 2: See the "Querying Subnets" section under "APIs" or the "Querying Networks" section under "OpenStack Neutron APIs" in the Virtual Private Cloud API Reference.
    +

    offset

    +

    Integer

    +

    No

    +

    Specifies the index position. If offset is set to N, the resource query starts from the N+1 piece of data. The value is 0 by default, indicating that the query starts from the first piece of data. The value must be a positive number.

    +

    limit

    +

    Integer

    +

    No

    +

    Specifies the number of records to be queried. The default value is 100. The value cannot be a negative number. The minimum value is 1 and the maximum value is 100.

    +
    +
    +
+
+

Request

None

+
+

Response

  • Normal response +
    + + + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Type

    +

    Description

    +

    instances

    +

    Array of objects

    +

    Indicates the DB instance information.

    +

    For details, see Table 3.

    +

    total_count

    +

    Integer

    +

    Indicates the total number of records.

    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 3 instances field data structure description

    Name

    +

    Type

    +

    Description

    +

    id

    +

    String

    +

    Indicates the DB instance ID.

    +

    name

    +

    String

    +

    Indicates the created DB instance name.

    +

    status

    +

    String

    +

    Indicates the DB instance status.

    +

    Value:

    +

    If the value is BUILD, the DB instance is being created.

    +

    If the value is ACTIVE, the DB instance is normal.

    +

    If the value is FAILED, the DB instance is abnormal.

    +

    If the value is EXPANDING, CNs or shards are being added to the DB instance.

    +

    If the value is REBOOTING, the DB instance is being rebooted.

    +

    If the value is BACKING UP, the DB instance is being backed up.

    +

    private_ips

    +

    List<String>

    +

    Indicates the private IP address list. It is a blank string until an ECS is created.

    +

    public_ips

    +

    List<String>

    +

    Indicates the public IP address list.

    +

    port

    +

    Integer

    +

    Indicates the database port number.

    +
    • The GaussDB(openGauss) database port ranges from 1024 to 39998 (excluding the following which are occupied by the system and cannot be used: 2378, 2379, 2380, 4999, 5000, 5999, 6000, 6001, 8097, 8098, 20049, 20050, 21731, and 21732).
    +

    If this parameter is not specified,

    +
    • the default value of GaussDB(openGauss) is 8000.
    +

    type

    +

    String

    +

    Indicates the instance type. The value is Enterprise, indicating the distributed instance (Enterprise Edition).

    +

    ha

    +

    Object

    +

    Returned when a distributed instance is obtained.

    +

    For details, see Table 4.

    +

    region

    +

    String

    +

    Indicates the region where the DB instance is deployed.

    +

    datastore

    +

    Object

    +

    Indicates the database information.

    +

    For details, see Table 5.

    +

    created

    +

    String

    +

    Indicates the creation time in the "yyyy-mm-ddThh:mm:ssZ" format.

    +

    T is the separator between the calendar and the hourly notation of time. Z indicates the time zone offset. For example, if the time zone offset is one hour, the value of Z is +0100.

    +

    The value is empty when the DB instance is being created. After the DB instance is created, the value is not empty.

    +

    updated

    +

    String

    +

    Indicates the update time. The format is the same as that of the created field.

    +

    The value is empty when the DB instance is being created. After the DB instance is created, the value is not empty.

    +

    db_user_name

    +

    String

    +

    Indicates the default username.

    +

    vpc_id

    +

    String

    +

    Indicates the VPC ID.

    +

    subnet_id

    +

    String

    +

    Indicates the network ID of the subnet.

    +

    security_group_id

    +

    String

    +

    Indicates the security group ID.

    +

    flavor_ref

    +

    String

    +

    Indicates the specification code. For details on how to obtain the GaussDB(openGauss) specification code, see Table 1.

    +

    volume

    +

    Object

    +

    Indicates the volume information.

    +

    For details, see Table 6.

    +

    switch_strategy

    +

    String

    +

    Indicates the database switchover policy. The value can be reliability or availability, indicating the reliability first and availability first, respectively.

    +

    backup_strategy

    +

    Object

    +

    Indicates the backup policy.

    +

    For details, see Table 7.

    +

    maintenance_window

    +

    String

    +

    Indicates the start time of the maintenance time window in the UTC format.

    +

    nodes

    +

    Array of objects

    +

    Indicates the instance node information.

    +

    For details, see Table 8.

    +

    related_instance

    +

    Array of objects

    +

    Indicates the list of associated DB instances. The parameters are not involved in GaussDB(openGauss).

    +

    time_zone

    +

    String

    +

    Indicates the time zone.

    +
    +
    + +
    + + + + + + + + + +
    Table 4 ha field data structure description

    Name

    +

    Type

    +

    Description

    +

    replication_mode

    +

    String

    +

    Indicates the replication mode for the standby node.

    +

    The value cannot be empty.

    +
    • For GaussDB(openGauss), the value is sync.
    +
    NOTE:
    • sync indicates the synchronous replication mode.
    +
    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 5 datastore field data structure description

    Name

    +

    Type

    +

    Description

    +

    type

    +

    String

    +

    Indicates the DB engine.

    +

    version

    +

    String

    +

    Indicates the database version.

    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 6 volume field data structure description

    Name

    +

    Type

    +

    Description

    +

    type

    +

    String

    +

    Indicates the volume type.

    +

    size

    +

    Integer

    +

    Indicates the volume size.

    +
    +
    + +
    + + + + + + + + + + + + + +
    Table 7 backup_strategy field data structure description

    Name

    +

    Type

    +

    Description

    +

    start_time

    +

    String

    +

    Indicates the backup time window. Automated backups will be triggered during the backup time window.

    +

    The time is in the UTC format.

    +

    keep_days

    +

    Integer

    +

    Indicates the number of days to retain the generated backup files.

    +

    The value ranges from 0 to 732. If the value is 0, the automated backup policy is not configured or has been disabled.

    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 8 nodes field data structure description

    Name

    +

    Type

    +

    Description

    +

    id

    +

    String

    +

    Indicates the node ID.

    +

    name

    +

    String

    +

    Indicates the node name.

    +

    role

    +

    String

    +

    Indicates the node type. The value can be master or slave, indicating the primary node and standby node respectively.

    +

    status

    +

    String

    +

    Indicates the node status.

    +

    availability_zone

    +

    String

    +

    Indicates the AZ.

    +
    +
    +
  • Example normal response

    Querying DB instances based on search criteria:

    +
    {
    +    "instances":[
    +        {
    +            "id":"3f6ee7c5e98f4c4d8c52be76cbf922efin14",
    +            "status":"ACTIVE",
    +            "name":"user1-no-delete-ng-B132_1",
    +            "port":8000,
    +            "type":"Enterprise",
    +            "ha":{
    +                "replication_mode":"sync"
    +            },
    +            "region":"eu-de",
    +            "datastore":{
    +                "type":"GaussDB(openGauss)",
    +                "version":"1.1"
    +            },
    +            "created":"2020-06-25T03:09:02+0000",
    +            "updated":"2020-06-25T05:34:53+0000",
    +            "volume":{
    +                "type":"ULTRAHIGH",
    +                "size":160
    +            },
    +            "nodes":[
    +                {
    +                    "id":"0218f10e317a4021ac8419c4b7e57dc2no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cms_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"24e233feb5c44075a2b0f650289c74fdno14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cn_1",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"2a8e9e6c55eb47759ade245af95a110fno14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn2_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"331dee7a09cf4e95a1d8eced07d1727ano14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5gtm_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"43b815a387fa4f2883659202e0c9a470no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5gtm_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"6274ceece9934a118dc5e5ff7f7f45c9no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cn_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"650101ff9b3943d6b57f7f7098c3c0afno14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn1_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"792859c1ec084b5da65532f4ad960b69no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cms_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"c59f81381f9c4e8d8ccded4792b7870fno14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn2_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"c6e15561a78548f6b94bd932356eb4a4no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn1_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"cfc1dfb875ca4601bd488d5b313277d9no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5gtm_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"d5846a820b214ae1863fe1cc41c1af93no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn2_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"eb0916d8fca4402b87686d8b085a7f53no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cn_2",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"f486bc86fd254f80865221ca837524b6no14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5dn1_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"fa49d05061204bbb90dd5b0e5839961ano14",
    +                    "name":"user1-no-delete-ng-B132_1_gaussdbv5cms_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                }
    +            ],
    +            "private_ips":[
    +                "10.0.0.0 / 10.0.0.1 / 10.0.0.3"
    +            ],
    +            "public_ips":[
    +
    +            ],
    +            "db_user_name":"root",
    +            "vpc_id":"1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id":"54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id":"c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref":"gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy":"reliability",
    +            "charge_info":{
    +                "charge_mode":"postPaid"
    +            },
    +            "backup_strategy":{
    +                "start_time":"",
    +                "keep_days":0
    +            },
    +            "maintenance_window":"18:00-22:00",
    +            "related_instance":[
    +
    +            ],
    +            "time_zone":"UTC+08:00"
    +        }
    +    ],
    +    "total_count":1
    +}
    +
    {
    +    "instances": [
    +        {
    +            "id": "3f6ee7c5e98f4c4d8c52be76cbf922efin14",
    +            "status": "ACTIVE",
    +            "name": "user1-no-delete-ng-B132_1",
    +            "port": 8000,
    +            "type": "Enterprise",
    +            "ha": {
    +                "replication_mode": "sync"
    +            },
    +            "region": "cn-xianhz-1",
    +            "datastore": {
    +                "type": "GaussDB(openGauss)",
    +                "version": "1.1"
    +            },
    +            "created": "2020-06-25T03:09:02+0000",
    +            "updated": "2020-06-25T05:34:53+0000",
    +            "volume": {
    +                "type": "ULTRAHIGH",
    +                "size": 160
    +            },
    +            "nodes": [
    +                {
    +                    "id": "0218f10e317a4021ac8419c4b7e57dc2no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cms_1",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "24e233feb5c44075a2b0f650289c74fdno14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cn_1",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "2a8e9e6c55eb47759ade245af95a110fno14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn2_2",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "331dee7a09cf4e95a1d8eced07d1727ano14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5gtm_1",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "43b815a387fa4f2883659202e0c9a470no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5gtm_0",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "6274ceece9934a118dc5e5ff7f7f45c9no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cn_0",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "650101ff9b3943d6b57f7f7098c3c0afno14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn1_0",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "792859c1ec084b5da65532f4ad960b69no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cms_2",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "c59f81381f9c4e8d8ccded4792b7870fno14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn2_1",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "c6e15561a78548f6b94bd932356eb4a4no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn1_1",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "cfc1dfb875ca4601bd488d5b313277d9no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5gtm_2",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "d5846a820b214ae1863fe1cc41c1af93no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn2_0",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "eb0916d8fca4402b87686d8b085a7f53no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cn_2",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "f486bc86fd254f80865221ca837524b6no14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5dn1_2",
    +                    "role": "slave",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                },
    +                {
    +                    "id": "fa49d05061204bbb90dd5b0e5839961ano14",
    +                    "name": "user1-no-delete-ng-B132_1_gaussdbv5cms_0",
    +                    "role": "master",
    +                    "status": "ACTIVE",
    +                    "availability_zone": "az1xahz"
    +                }
    +            ],
    +            "private_ips": [
    +                "10.0.0.0 / 10.0.0.1 / 10.0.0.3"
    +            ],
    +            "public_ips": [],
    +            "db_user_name": "root",
    +            "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy": "reliability",
    +            "charge_info": {
    +                "charge_mode": "postPaid"
    +            },
    +            "backup_strategy": {
    +                "start_time": "",
    +                "keep_days": 0
    +            },
    +            "maintenance_window": "18:00-22:00",
    +            "related_instance": [],
    +            "time_zone": "UTC+08:00"
    +        }
    +    ],
    +    "total_count": 1
    +}
    +
+
  • Querying all DB instances:
    {
    +    "instances":[
    +        {
    +            "id":"4670359c9cb94644bf0e0111e3b0158bin14",
    +            "status":"ACTIVE",
    +            "name":"user_upgrade_test6_x86",
    +            "port":8000,
    +            "type":"Enterprise",
    +            "ha":{
    +                "replication_mode":"sync"
    +            },
    +            "region":"cn-xianhz-1",
    +            "datastore":{
    +                "type":"GaussDB(openGauss)",
    +                "version":"1.1"
    +            },
    +            "created":"2020-06-22T12:45:41+0000",
    +            "updated":"2020-06-22T12:45:41+0000",
    +            "volume":{
    +                "type":"ULTRAHIGH",
    +                "size":120
    +            },
    +            "nodes":[
    +                {
    +                    "id":"409ff2a1c8aa44db98c4df339bf5f9d6no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"595a235a51ab482ab997d1d0cff6dfb7no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cn_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"5b944393b7434aa684b53b11fc572fcano14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"5c2d2f451a274113a0ae441e9187ae26no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"718091e1229245af876f28cf8713225cno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"96949fe1373b486ebab8c9c87c9cb1ddno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"973d5816100841388b4a6b822aff6e20no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"a06bf305f995426f87b747aa98a94a4ano14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"ab7793dfc70c4ae7a535921639233d9cno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"d6b081f12d984d3ba8804dadbb8920deno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                }
    +            ],
    +             "private_ips":[
    +                "10.0.0.0"
    +            ],
    +            "public_ips":[
    +
    +            ],
    +            "db_user_name":"root",
    +            "vpc_id":"1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id":"54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id":"c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref":"gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy":"reliability",
    +            "charge_info":{
    +                "charge_mode":"postPaid"
    +            },
    +            "backup_strategy":{
    +                "start_time":"",
    +                "keep_days":0
    +            },
    +            "maintenance_window":"18:00-22:00",
    +            "related_instance":[
    +
    +            ],
    +            "time_zone":"UTC+08:00"
    +        },
    +        {
    +            "id":"08a693683a394bbd82907f300ea219abin14",
    +            "status":"ACTIVE",
    +            "name":"user_x86_01",
    +            "port":8000,
    +            "type":"Enterprise",
    +            "ha":{
    +                "replication_mode":"sync"
    +            },
    +            "region":"cn-xianhz-1",
    +            "datastore":{
    +                "type":"GaussDB(openGauss)",
    +                "version":"1.1"
    +            },
    +            "created":"2020-06-22T08:54:50+0000",
    +            "updated":"2020-06-22T08:54:50+0000",
    +            "volume":{
    +                "type":"ULTRAHIGH",
    +                "size":120
    +            },
    +            "nodes":[
    +                {
    +                    "id":"271ec8ed56d842839f117382582a631fno14",
    +                    "name":"user_x86_01_gaussdbv5dn1_0",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"54bfeea3d28d40ec9d49df7458f2ebe3no14",
    +                    "name":"user_x86_01_gaussdbv5dn1_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"688e0d16c0004a1ca0d4697cb8d74a32no14",
    +                    "name":"user_x86_01_gaussdbv5gtm_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"81b682997ca84c668d1d0b727ee9662fno14",
    +                    "name":"user_x86_01_gaussdbv5gtm_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"847f153d9f524e4a845b39f2291742e6no14",
    +                    "name":"user_x86_01_gaussdbv5dn1_1",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"a7fb4fb4d14940bb90a558d2fe7343c2no14",
    +                    "name":"user_x86_01_gaussdbv5gtm_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"b3f496af3a9745ae891bb5f4fc553a3eno14",
    +                    "name":"user_x86_01_gaussdbv5cms_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"c3a0fa4d919f40559000fa5e61fd1047no14",
    +                    "name":"user_x86_01_gaussdbv5cn_1",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"cecfb26dbef846499e5e20fa3efd42f4no14",
    +                    "name":"user_x86_01_gaussdbv5cn_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"cfc23c4642524a59a2d33dbf038f9f4bno14",
    +                    "name":"user_x86_01_gaussdbv5cms_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                },
    +                {
    +                    "id":"efb7f9059e7c439a9b8d53a991f5e526no14",
    +                    "name":"user_x86_01_gaussdbv5cms_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"az2xahz"
    +                }
    +            ],
    +            "private_ips":[
    +                "10.0.0.0 / 10.0.0.1"
    +            ],
    +            "public_ips":[
    +
    +            ],
    +            "db_user_name":"root",
    +            "vpc_id":"1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id":"54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id":"c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref":"gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy":"reliability",
    +            "charge_info":{
    +                "charge_mode":"postPaid"
    +            },
    +            "backup_strategy":{
    +                "start_time":"",
    +                "keep_days":0
    +            },
    +            "maintenance_window":"18:00-22:00",
    +            "related_instance":[
    +
    +            ],
    +            "time_zone":"UTC+08:00"
    +        }
    +    ],
    +    "total_count":2
    +}
    +
    {
    +    "instances":[
    +        {
    +            "id":"4670359c9cb94644bf0e0111e3b0158bin14",
    +            "status":"ACTIVE",
    +            "name":"user_upgrade_test6_x86",
    +            "port":8000,
    +            "type":"Enterprise",
    +            "ha":{
    +                "replication_mode":"sync"
    +            },
    +            "region":"eu-de",
    +            "datastore":{
    +                "type":"GaussDB(openGauss)",
    +                "version":"1.1"
    +            },
    +            "created":"2020-06-22T12:45:41+0000",
    +            "updated":"2020-06-22T12:45:41+0000",
    +            "volume":{
    +                "type":"ULTRAHIGH",
    +                "size":120
    +            },
    +            "nodes":[
    +                {
    +                    "id":"409ff2a1c8aa44db98c4df339bf5f9d6no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"595a235a51ab482ab997d1d0cff6dfb7no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cn_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"5b944393b7434aa684b53b11fc572fcano14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"5c2d2f451a274113a0ae441e9187ae26no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"718091e1229245af876f28cf8713225cno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"96949fe1373b486ebab8c9c87c9cb1ddno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"973d5816100841388b4a6b822aff6e20no14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5cms_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"a06bf305f995426f87b747aa98a94a4ano14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5gtm_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"ab7793dfc70c4ae7a535921639233d9cno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"d6b081f12d984d3ba8804dadbb8920deno14",
    +                    "name":"user_upgrade_test6_x86_gaussdbv5dn1_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                }
    +            ],
    +            "private_ips":[
    +                "10.0.0.0"
    +            ],
    +            "public_ips":[
    +
    +            ],
    +            "db_user_name":"root",
    +            "vpc_id":"1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id":"54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id":"c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref":"gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy":"reliability",
    +            "charge_info":{
    +                "charge_mode":"postPaid"
    +            },
    +            "backup_strategy":{
    +                "start_time":"",
    +                "keep_days":0
    +            },
    +            "maintenance_window":"18:00-22:00",
    +            "related_instance":[
    +
    +            ],
    +            "time_zone":"UTC+08:00"
    +        },
    +        {
    +            "id":"08a693683a394bbd82907f300ea219abin14",
    +            "status":"ACTIVE",
    +            "name":"user_x86_01",
    +            "port":8000,
    +            "type":"Enterprise",
    +            "ha":{
    +                "replication_mode":"sync"
    +            },
    +            "region":"eu-de",
    +            "datastore":{
    +                "type":"GaussDB(openGauss)",
    +                "version":"1.1"
    +            },
    +            "created":"2020-06-22T08:54:50+0000",
    +            "updated":"2020-06-22T08:54:50+0000",
    +            "volume":{
    +                "type":"ULTRAHIGH",
    +                "size":120
    +            },
    +            "nodes":[
    +                {
    +                    "id":"271ec8ed56d842839f117382582a631fno14",
    +                    "name":"user_x86_01_gaussdbv5dn1_0",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"54bfeea3d28d40ec9d49df7458f2ebe3no14",
    +                    "name":"user_x86_01_gaussdbv5dn1_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"688e0d16c0004a1ca0d4697cb8d74a32no14",
    +                    "name":"user_x86_01_gaussdbv5gtm_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"81b682997ca84c668d1d0b727ee9662fno14",
    +                    "name":"user_x86_01_gaussdbv5gtm_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"847f153d9f524e4a845b39f2291742e6no14",
    +                    "name":"user_x86_01_gaussdbv5dn1_1",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"a7fb4fb4d14940bb90a558d2fe7343c2no14",
    +                    "name":"user_x86_01_gaussdbv5gtm_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"b3f496af3a9745ae891bb5f4fc553a3eno14",
    +                    "name":"user_x86_01_gaussdbv5cms_2",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"c3a0fa4d919f40559000fa5e61fd1047no14",
    +                    "name":"user_x86_01_gaussdbv5cn_1",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"cecfb26dbef846499e5e20fa3efd42f4no14",
    +                    "name":"user_x86_01_gaussdbv5cn_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"cfc23c4642524a59a2d33dbf038f9f4bno14",
    +                    "name":"user_x86_01_gaussdbv5cms_0",
    +                    "role":"master",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                },
    +                {
    +                    "id":"efb7f9059e7c439a9b8d53a991f5e526no14",
    +                    "name":"user_x86_01_gaussdbv5cms_1",
    +                    "role":"slave",
    +                    "status":"ACTIVE",
    +                    "availability_zone":"eu-de-01"
    +                }
    +            ],
    +            "private_ips":[
    +                "10.0.0.0 / 10.0.0.1"
    +            ],
    +            "public_ips":[
    +
    +            ],
    +            "db_user_name":"root",
    +            "vpc_id":"1f011c32-2de2-4aa8-a161-9498dbcef329",
    +            "subnet_id":"54a44bec-e36f-441e-86bb-d749ace9c189",
    +            "security_group_id":"c6123999-8532-421c-9db6-e078013ff58f",
    +            "flavor_ref":"gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
    +            "switch_strategy":"reliability",
    +            "charge_info":{
    +                "charge_mode":"postPaid"
    +            },
    +            "backup_strategy":{
    +                "start_time":"",
    +                "keep_days":0
    +            },
    +            "maintenance_window":"18:00-22:00",
    +            "related_instance":[
    +
    +            ],
    +            "time_zone":"UTC+08:00"
    +        }
    +    ],
    +    "total_count":2
    +}
    +

    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0019.html b/docs/opengauss/api-ref/opengauss_api_0019.html new file mode 100644 index 000000000..dc53b5aea --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0019.html @@ -0,0 +1,172 @@ + + +

Adding CNs

+

Function

This API is used to add CNs.

+ +
+

Constraints

  • The CN growth increment ranges from 1 to 9.
  • The maximum number of CNs is 256.
  • If you choose the single-AZ deployment during instance creation, add CNs in the same AZ.
  • The number of CNs for a DB instance must be less than or equal to twice the number of shards.
+
+

URI

  • URI format

    POST https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/action

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/action

    +
  • Parameter description +
    + + + + + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +

    instance_id

    +

    Yes

    +

    Specifies the DB instance ID.

    +
    +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    expand_cluster

    +

    Yes

    +

    Object

    +

    For details, see Table 3.

    +
    +
    + +
    + + + + + + + + + + + +
    Table 3 expand_cluster field data structure description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    coordinators

    +

    Yes

    +

    Array

    +

    For details, see Table 4.

    +
    +
    + +
    + + + + + + + + + + + +
    Table 4 azCode field data structure description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    az_code

    +

    Yes

    +

    String

    +

    Specifies the AZ to which CNs are to be added.

    +
    +
    +
+
  • Example request (adding CNs for a single-CN instance)
    {
    +	"expand_cluster": {
    +                "coordinators": [
    +                        {
    +                               "az_code":"eu-de-01"
    +                        }
    +                ]
    +	}
    +}
    +
  • Example request (adding CNs for a multi-CN instance)
    {
    +	"expand_cluster": {
    +                "coordinators": [
    +                        {
    +                               "az_code":"eu-de-01"
    +                        },
    +                        {
    +                               "az_code":"eu-de-01"
    +                        },
    +                        {
    +                               "az_code":"eu-de-01"
    +                        }
    +                ]
    +	}
    +}
    +
+
+

Response

  • Normal response +
    + + + + + + + + + +
    Table 5 Parameter description

    Name

    +

    Type

    +

    Description

    +

    job_id

    +

    String

    +

    Specifies the task ID.

    +
    +
    +
+
+
  • Example normal response
    {
    +	"job_id": "2b414788a6004883a02390e2eb0ea227"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0020.html b/docs/opengauss/api-ref/opengauss_api_0020.html new file mode 100644 index 000000000..c0effb54a --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0020.html @@ -0,0 +1,130 @@ + + +

Adding Shards

+

Function

This API is used to add shards.

+ +

Intermittent disconnection occurs when shards are being added. Exercise caution when performing this operation.

+
+
+

Constraints

  • The shard growth increment ranges from 1 to 9.
  • The maximum number of shards is 256.
+
+

URI

  • URI format

    POST https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/action

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/action

    +
    • Parameter description +
      + + + + + + + + + + + +
      Table 1 Parameter description

      Name

      +

      Mandatory

      +

      Type

      +

      Description

      +

      expand_cluster

      +

      Yes

      +

      Object

      +

      For details, see Table 2.

      +
      +
      + +
      + + + + + + + + + + + +
      Table 2 expand_cluster field data structure description

      Name

      +

      Mandatory

      +

      Type

      +

      Description

      +

      shard

      +

      Yes

      +

      Object

      +

      For details, see Table 3.

      +
      +
      + +
      + + + + + + + + + + + +
      Table 3 count field data structure description

      Name

      +

      Mandatory

      +

      Type

      +

      Description

      +

      count

      +

      Yes

      +

      Integer

      +

      Specifies the number of shards to be added.

      +
      +
      +
    +
+
+
  • Request example
    {
    +	"expand_cluster": {
    +                "shard":{
    +                       "count":"1"
    +                }
    +	}
    +}
    +
+
+

Response

  • Normal response +
    + + + + + + + + + +
    Table 4 Parameter description

    Name

    +

    Type

    +

    Description

    +

    job_id

    +

    String

    +

    Specifies the task ID.

    +
    +
    +
+
+
  • Example normal response
    {
    +	"job_id": "2b414788a6004883a02390e2eb0ea227"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0021.html b/docs/opengauss/api-ref/opengauss_api_0021.html new file mode 100644 index 000000000..3192ce519 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0021.html @@ -0,0 +1,85 @@ + + +

Resetting a Database Password

+

Function

This API is used to reset a database password.

+ +
+

URI

  • URI format

    POST https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/password

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/password

    +
    • Parameter description +
      + + + + + + + + + + + + + +
      Table 1 Parameter description

      Name

      +

      Mandatory

      +

      Description

      +

      project_id

      +

      Yes

      +

      Specifies the project ID of a tenant in a region.

      +

      For details about how to obtain the project ID, see Obtaining a Project ID.

      +

      instance_id

      +

      Yes

      +

      Specifies the DB instance ID, which is compliant with the UUID format.

      +
      +
      +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    password

    +

    Yes

    +

    String

    +

    Specifies the password for user root.

    +
    • It consists of 8 to 32 characters and contains at least three types of the following characters: uppercase letters, lowercase letters, digits, and special characters (~! @#$%^*-_=+?,).
    • It supports weak password verification.
    +
    +
    +
+
+
  • Example request
    {
    +  "password": "Test_345612"
    +}
    +
+

Response

  • Normal responses

    None

    +
  • Example normal response

    {}

    +
+
+ +

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0022.html b/docs/opengauss/api-ref/opengauss_api_0022.html new file mode 100644 index 000000000..9d101c39b --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0022.html @@ -0,0 +1,105 @@ + + +

Modifying a DB Instance Name

+

Function

This API is used to change a DB instance name.

+ +
+

URI

  • URI format

    PUT https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/name

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in14/name

    +
    • Parameter description +
      + + + + + + + + + + + + + +
      Table 1 Parameter description

      Name

      +

      Mandatory

      +

      Description

      +

      project_id

      +

      Yes

      +

      Specifies the project ID of a tenant in a region.

      +

      For details about how to obtain the project ID, see Obtaining a Project ID.

      +

      instance_id

      +

      Yes

      +

      Specifies the DB instance ID, which is compliant with the UUID format.

      +
      +
      +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    name

    +

    Yes

    +

    String

    +

    Specifies the DB instance name. DB instances of the same type can have same names under the same tenant.

    +

    The value consists of 4 to 64 characters and starts with a letter. It is case-sensitive and contains only letters, digits, hyphens (-), and underscores (_).

    +
    +
    +
+
+
  • Example request
    {
    +  "name": "instance-name"
    +}
    +
+

Response

  • Normal responses +
    + + + + + + + + + +
    Table 3 Parameter description

    Name

    +

    Type

    +

    Description

    +

    job_id

    +

    String

    +

    Indicates the ID of the task for changing a DB instance name.

    +
    +
    +
+
+
  • Example normal response
    {
    +	"job_id": "2b414788a6004883a02390e2eb0ea227"
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0023.html b/docs/opengauss/api-ref/opengauss_api_0023.html new file mode 100644 index 000000000..30fa6bff4 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0023.html @@ -0,0 +1,15 @@ + + +

Parameter Configuration

+
+ + diff --git a/docs/opengauss/api-ref/opengauss_api_0024.html b/docs/opengauss/api-ref/opengauss_api_0024.html new file mode 100644 index 000000000..8414d36f9 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0024.html @@ -0,0 +1,140 @@ + + +

Modifying Parameters of a Specified DB Instance

+

Function

This API is used to modify parameters in the parameter template of a specified DB instance.

+ +
+

Constraints

  • The values of the edited parameters must be within the default value range of the specified database version. For details about the range of parameter values, see "Modifying Parameters in a Parameter Template" in the GaussDB(openGauss) User Guide.
+
+

URI

  • URI format

    PUT https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/configurations

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/configurations

    +
  • Parameter description +
    + + + + + + + + + + + + + +
    Table 1 Parameter description

    Name

    +

    Mandatory

    +

    Description

    +

    project_id

    +

    Yes

    +

    Specifies the project ID of a tenant in a region.

    +

    For details about how to obtain the project ID, see Obtaining a Project ID.

    +

    instance_id

    +

    Yes

    +

    Specifies the DB instance ID.

    +
    +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    values

    +

    Yes

    +

    Map<String,String>

    +

    Specifies the parameter values defined by users based on the default parameter templates. For details, see Table 3.

    +
    +
    + +
    + + + + + + + + + + + + + + + + +
    Table 3 values field data structure description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    key

    +

    Yes

    +

    String

    +

    Specifies the parameter name. For example, for the "failed_login_attempts": "4" parameter, the key is failed_login_attempts.

    +

    value

    +

    Yes

    +

    String

    +

    Specifies the parameter value. For example, for the "failed_login_attempts": "4" parameter, the value is 4.

    +
    +
    +
+
  • Request example
    { 
    +    "values": { 
    +       "xxx": "10", 
    +       "yyy": "OFF" 
    +    }
    +}
    +
+
+

Response

  • Normal response +
    + + + + + + + + + +
    Table 4 Parameter description

    Name

    +

    Type

    +

    Description

    +

    restart_required

    +

    Boolean

    +

    Indicates whether a reboot is required.

    +
    • true: A reboot is required.
    • false: A reboot is not required.
    +
    +
    +
  • Example normal response
    {
    +  "restart_required": false
    +}
    +
  • Abnormal response

    For details, see Abnormal Request Results.

    +
+
+

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0025.html b/docs/opengauss/api-ref/opengauss_api_0025.html new file mode 100644 index 000000000..cd031bf94 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0025.html @@ -0,0 +1,19 @@ + + + +

Backup Management

+ +

+
+ +
+ + + +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0026.html b/docs/opengauss/api-ref/opengauss_api_0026.html new file mode 100644 index 000000000..2ed90a7f1 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0026.html @@ -0,0 +1,148 @@ + + +

Setting an Automated Backup Policy

+

Function

This API is used to set an automated backup policy.

+ +
+

URI

  • URI format

    PUT https://{Endpoint}/opengauss/v3/{project_id}/instances/{instance_id}/backups/policy

    +
  • Example

    https://gaussdb.eu-de.otc.t-systems.com/opengauss/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in14/backups/policy

    +
    • Parameter description +
      + + + + + + + + + + + + + +
      Table 1 Parameter description

      Name

      +

      Mandatory

      +

      Description

      +

      project_id

      +

      Yes

      +

      Specifies the project ID of a tenant in a region.

      +

      For details about how to obtain the project ID, see Obtaining a Project ID.

      +

      instance_id

      +

      Yes

      +

      Specifies the DB instance ID, which is compliant with the UUID format.

      +
      +
      +
    +
+
+

Request

  • Parameter description +
    + + + + + + + + + + + +
    Table 2 Parameter description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    backup_policy

    +

    Yes

    +

    Object

    +

    Specifies the backup policy information.

    +

    For details, see Table 3.

    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Table 3 backup_policy field data structure description

    Name

    +

    Mandatory

    +

    Type

    +

    Description

    +

    keep_days

    +

    Yes

    +

    Integer

    +

    Specifies the backup retention days.

    +

    The value ranges from 1 to 732.

    +

    start_time

    +

    Yes

    +

    String

    +

    Specifies the backup time window. Automated backups will be triggered during the backup time window.

    +

    The value cannot be empty. It must be a valid value in the "hh:mm-HH:MM" format. The current time is in the UTC format.

    +

    The value of HH must be 1 greater than the value of hh. The values of mm and MM must be the same and must be 00.

    +

    Example value:

    +

    21:00-22:00

    +

    period

    +

    Yes

    +

    String

    +

    Specifies the full backup period. An automated full backup will be performed on the specified days of the week.

    +

    The value is a number separated by commas (,), indicating the days of the week. For example, 1,2,3,4 indicates that the backup period is Monday, Tuesday, Wednesday, and Thursday.

    +

    differential_period

    +

    Yes

    +

    String

    +

    Specifies the interval for automated differential backups.

    +

    The value is 15, 30, 60, 180, 360, 720, or 1440 in minute.

    +

    Example value: 30

    +
    +
    +
+
+
  • Example request
    {
    +	"backup_policy": {
    +		"keep_days": 7,
    +		"start_time": "19:00-20:00",
    +		"period": "1,2,3,4,5",
    +		"differential_period": "30"
    +	}
    +}
    +
+

Response

  • Normal response

    None

    +
  • Example normal response

    {}

    +
+
+ +

Status Codes

For details, see Status Codes.

+
+

Error Codes

For details, see Error Codes.

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0030.html b/docs/opengauss/api-ref/opengauss_api_0030.html new file mode 100644 index 000000000..3ebf4be04 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0030.html @@ -0,0 +1,21 @@ + + +

Appendix

+
+ + diff --git a/docs/opengauss/api-ref/opengauss_api_0031.html b/docs/opengauss/api-ref/opengauss_api_0031.html new file mode 100644 index 000000000..6692aef50 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0031.html @@ -0,0 +1,42 @@ + + +

Abnormal Request Results

+
Abnormal response description +
+ + + + + + + + + + + + + +
Table 1 Abnormal response description

Name

+

Type

+

Description

+

error_code

+

String

+

Specifies the error returned when a task submission exception occurs.

+

error_msg

+

String

+

Specifies the description of the error returned when a task submission exception occurs.

+
+
+
+
Response example
{
+    "error_code": "DBS.200022",
+    "error_msg": "The DB instance name already exists."
+}
+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0032.html b/docs/opengauss/api-ref/opengauss_api_0032.html new file mode 100644 index 000000000..2dd4e05d6 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0032.html @@ -0,0 +1,328 @@ + + +

Status Codes

+

Table 1 describes status codes.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 Status codes

Status Code

+

Message

+

Description

+

100

+

Continue

+

The client should continue with its request.

+

This interim response is used to inform the client that the initial part of the request has been received and has not yet been rejected by the server.

+

101

+

Switching Protocols

+

The protocol should be switched. The protocol can only be switched to a more advanced protocol.

+

For example, the current HTTP protocol is switched to a later version.

+

200

+

OK

+

Request succeeded.

+

201

+

Created

+

The request for creating a resource or task has been fulfilled.

+

202

+

Accepted

+

The request has been accepted, but the processing has not been completed.

+

203

+

Non-Authoritative Information

+

Unauthorized information. The request is successful.

+

204

+

NoContent

+

The server has successfully processed the request, but has not returned any content.

+

The status code is returned in response to an HTTP OPTIONS request.

+

205

+

Reset Content

+

The server has fulfilled the request, but the requester is required to reset the content.

+

206

+

Partial Content

+

The server has processed certain GET requests.

+

300

+

Multiple Choices

+

There are multiple options for the location of the requested resource. The response contains a list of resource characteristics and addresses from which the user or user agent (such as a browser) can choose the most appropriate one.

+

301

+

Moved Permanently

+

The requested resource has been assigned a new permanent URI, and the new URI is contained in the response.

+

302

+

Found

+

The requested resource was temporarily moved.

+

303

+

See Other

+

The response to the request can be found under a different URI and should be retrieved using a GET or POST method.

+

304

+

Not Modified

+

The requested resource has not been modified. In such a case, there is no need to retransmit the resource since the client still has a previously-downloaded copy.

+

305

+

Use Proxy

+

The requested resource must be accessed through a proxy.

+

306

+

Unused

+

The HTTP status code is no longer used.

+

400

+

BadRequest

+

Invalid request.

+

The client should not repeat the request without modifications.

+

401

+

Unauthorized

+

The status code is returned after the client provides the authentication information, indicating that the authentication information is incorrect or invalid.

+

402

+

Payment Required

+

This status code is reserved for future use.

+

403

+

Forbidden

+

The server understood the request, but is refusing to fulfill it.

+

The client should not repeat the request without modifications.

+

404

+

NotFound

+

The requested resource cannot be found.

+

The client should not repeat the request without modifications.

+

405

+

MethodNotAllowed

+

The method specified in the request is not supported for the requested resource.

+

The client should not repeat the request without modifications.

+

406

+

Not Acceptable

+

The server cannot fulfill the request according to the content characteristics of the request.

+

407

+

Proxy Authentication Required

+

This status code is similar to 401, but indicates that the client must first authenticate itself with the proxy.

+

408

+

Request Time-out

+

The server timed out waiting for the request.

+

The client may repeat the request without modifications at any later time.

+

409

+

Conflict

+

The request could not be processed due to a conflict.

+

This status code indicates that the resource that the client attempts to create already exits, or the request fails to be processed because of the update of the conflict request.

+

410

+

Gone

+

The requested resource is no longer available.

+

The requested resource has been deleted permanently.

+

411

+

Length Required

+

The server refuses to process the request without a defined Content-Length.

+

412

+

Precondition Failed

+

The server does not meet one of the preconditions that the requester puts on the request.

+

413

+

Request Entity Too Large

+

The request is larger than that a server is able to process. The server may close the connection to prevent the client from continuing the request. If the server temporarily cannot process the request, the response will contain a Retry-After header field.

+

414

+

Request-URI Too Large

+

The URI provided was too long for the server to process.

+

415

+

Unsupported Media Type

+

The server is unable to process the media format in the request.

+

416

+

Requested range not satisfied

+

The requested range is invalid.

+

417

+

Expectation Failed

+

The server fails to meet the requirements of the Expect request-header field.

+

422

+

UnprocessableEntity

+

The request is well-formed but is unable to be processed due to semantic errors.

+

429

+

TooManyRequests

+

The client has sent more requests than its rate limit is allowed within a given amount of time, or the server has received more requests than it is able to process within a given amount of time. In this case, it is advisable for the client to re-initiate requests after the time specified in the Retry-After header of the response expires.

+

500

+

InternalServerError

+

The server is able to receive the request but it could not understand the request.

+

501

+

Not Implemented

+

The server does not support the requested function.

+

502

+

Bad Gateway

+

The server acting as a gateway or proxy receives an invalid response from a remote server.

+

503

+

ServiceUnavailable

+

The requested service is invalid.

+

The client should not repeat the request without modifications.

+

504

+

ServerTimeout

+

The request cannot be fulfilled within a given time. The response will reach the client only if the request carries a timeout parameter.

+

505

+

HTTP Version not supported

+

The server does not support the HTTP protocol version used in the request.

+
+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0033.html b/docs/opengauss/api-ref/opengauss_api_0033.html new file mode 100644 index 000000000..d4c3f149b --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0033.html @@ -0,0 +1,968 @@ + + +

Error Codes

+

The following table describes error codes.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 V3 error codes

Error Code

+

Response Code

+

Description

+

DBS.108000

+

500

+

Server failure.

+

DBS.108002

+

500

+

Server failure.

+

DBS.108005

+

500

+

Server failure.

+

DBS.200001

+

400

+

Parameter error.

+

DBS.200002

+

404

+

The DB instance does not exist.

+

DBS.200004

+

400

+

Parameter error.

+

DBS.200005

+

500

+

Server failure.

+

DBS.200006

+

400

+

The request is null. Enter a request parameter.

+

DBS.200008

+

404

+

The ECS information of the DB instance cannot be found.

+

DBS.200010

+

403

+

The DB instance ID or user ID may be null, or the operation is not authorized.

+

DBS.200011

+

409

+

Another operation is being performed on the DB instance or the DB instance is faulty.

+

DBS.200013

+

404

+

The original DB instance does not exist.

+

DBS.200019

+

409

+

Another operation is being performed on the DB instance or the DB instance is faulty.

+

DBS.200021

+

400

+

Invalid DB instance name.

+

DBS.200022

+

409

+

The DB instance name already exists.

+

DBS.200023

+

400

+

Storage space is out of range.

+

DBS.200024

+

400

+

Invalid region.

+

DBS.200025

+

400

+

Invalid AZ.

+

DBS.200026

+

400

+

Invalid storage type.

+

DBS.200027

+

400

+

Storage space must be a multiple of 10.

+

DBS.200040

+

400

+

The DB engine or version is not supported.

+

DBS.200041

+

400

+

Invalid database version.

+

DBS.200042

+

400

+

The DB engine does not exist.

+

DBS.200043

+

400

+

Invalid synchronize model.

+

DBS.200044

+

403

+

Resource not found or permission denied.

+

DBS.200045

+

404

+

The DB instance does not exist.

+

DBS.200046

+

413

+

The number of DB instances has reached the quota.

+

DBS.200047

+

409

+

Another operation is being performed on the DB instance or the DB instance is faulty.

+

DBS.200048

+

400

+

Invalid VPC ID.

+

DBS.200049

+

400

+

Invalid network ID.

+

DBS.200050

+

404

+

The security group does not exist or does not belong to the VPC.

+

DBS.200051

+

400

+

Invalid HA mode.

+

DBS.200052

+

400

+

Invalid database root password.

+

DBS.200053

+

400

+

The selected specifications do not exist.

+

DBS.200054

+

400

+

Invalid specifications.

+

DBS.200055

+

400

+

Invalid replica_of_id.

+

DBS.200056

+

400

+

The maximum number of nodes has been reached.

+

DBS.200086

+

400

+

This operation is not allowed by the DB instance status.

+

DBS.200087

+

400

+

The number of tags added for the DB instance has reached the quota.

+

DBS.200098

+

400

+

The tag already exists.

+

DBS.200203

+

400

+

Failed to query the DB instance.

+

DBS.200303

+

400

+

The scale-up times have reached the maximum value.

+

DBS.200306

+

400

+

The new storage space must be greater than or equal to the original storage space.

+

DBS.200308

+

400

+

The new storage space after scaling up cannot be greater than that of the primary DB instance.

+

DBS.200316

+

409

+

This operation cannot be performed because the DB instance status is Storage full.

+

DBS.200402

+

409

+

Invalid operation.

+

DBS.200405

+

400

+

Parameter error.

+

DBS.200408

+

404

+

The DB instance does not exist.

+

DBS.200461

+

400

+

The parameter value is out of range.

+

DBS.200470

+

404

+

The region or AZ does not exist.

+

DBS.200501

+

404

+

The subnet does not exist or does not belong to the VPC.

+

DBS.200503

+

404

+

The VPC does not exist or does not belong to the user.

+

DBS.200504

+

400

+

Invalid database version.

+

DBS.200506

+

400

+

Invalid KMS.

+

DBS.200543

+

400

+

The job does not exist.

+

DBS.200602

+

404

+

The DB instance does not exist.

+

DBS.200604

+

403

+

The DB instance ID or user ID may be null, or the operation is not authorized.

+

DBS.200811

+

500

+

Failed to create the database.

+

DBS.201003

+

403

+

Resource not found or permission denied.

+

DBS.201010

+

404

+

The backup information does not exist.

+

DBS.201014

+

400

+

This operation is not allowed by the DB instance status.

+

DBS.201028

+

404

+

The DB instance does not exist.

+

DBS.201035

+

400

+

The database name must be different from the original and target database names.

+

DBS.201101

+

400

+

Invalid backup cycle.

+

DBS.201103

+

400

+

Invalid backup start time.

+

DBS.201106

+

400

+

Invalid retention days.

+

DBS.201201

+

409

+

The object already exists.

+

DBS.201202

+

409

+

Another operation is being performed on the DB instance or the DB instance is faulty.

+

DBS.201203

+

400

+

The backup file does not exist.

+

DBS.201205

+

409

+

Backup is in progress, please wait.

+

DBS.201207

+

400

+

The DB engine or version is not supported.

+

DBS.212001

+

404

+

The parameter template does not exist.

+

DBS.212002

+

400

+

Incorrect parameter template quota.

+

DBS.212003

+

400

+

Operation not allowed.

+

DBS.212004

+

400

+

Parameter template update error.

+

DBS.212005

+

400

+

The node does not belong to the group.

+

DBS.212006

+

409

+

Another operation is being performed on the DB instance or the DB instance is faulty.

+

DBS.212007

+

400

+

The DB engine does not exist.

+

DBS.212008

+

400

+

The DB engine is not supported.

+

DBS.212009

+

400

+

Task processing failed.

+

DBS.212010

+

400

+

The parameter template is being applied.

+

DBS.212011

+

400

+

Application failed.

+

DBS.212012

+

400

+

The parameter does not exist.

+

DBS.212013

+

404

+

The object does not exist.

+

DBS.212014

+

400

+

The node does not have a default parameter template.

+

DBS.212015

+

400

+

Partial success

+

DBS.212016

+

400

+

Parameter update failed.

+

DBS.212017

+

400

+

Invalid parameter.

+

DBS.212019

+

422

+

The parameter cannot be processed.

+

DBS.212025

+

400

+

Update failed.

+

DBS.212030

+

400

+

Parameter error

+

DBS.212032

+

400

+

The parameter template has been applied.

+

DBS.212037

+

400

+

Parameters are incorrectly set.

+

DBS.213004

+

500

+

Failed to process the request.

+

DBS.216028

+

400

+

Insufficient internal resource quota.

+

DBS.280001

+

400

+

Parameter error.

+

DBS.280015

+

403

+

Resource not found or permission denied.

+

DBS.280056

+

403

+

Invalid token.

+

DBS.280127

+

400

+

Invalid backup description.

+

DBS.280128

+

400

+

The database name does not exist.

+

DBS.280204

+

400

+

Invalid parameter.

+

DBS.280214

+

400

+

The backup does not exist.

+

DBS.280235

+

400

+

Invalid database type.

+

DBS.280236

+

400

+

Invalid database version.

+

DBS.280238

+

400

+

The DB engine or version is not supported.

+

DBS.280239

+

400

+

Invalid specifications.

+

DBS.280241

+

400

+

Invalid storage type.

+

DBS.280246

+

400

+

Invalid database root password.

+

DBS.280250

+

400

+

Invalid backup retention days.

+

DBS.280253

+

400

+

Invalid backup start time.

+

DBS.280270

+

400

+

The parameter does not exist.

+

DBS.280271

+

400

+

The parameter value is out of range.

+

DBS.280272

+

400

+

The tag key must be unique.

+

DBS.280277

+

400

+

Invalid object name.

+

DBS.280285

+

400

+

Invalid AZ.

+

DBS.280404

+

400

+

Invalid DB instance ID or node ID format.

+

DBS.280449

+

400

+

Operation not allowed on frozen objects.

+

DBS.280450

+

400

+

The DB instance specifications are sold out.

+

DBS.290000

+

400

+

Parameter error.

+

DBS.290001

+

400

+

Invalid parameter letter case.

+

DBS.290002

+

404

+

The selected specifications do not exist.

+

DBS.290003

+

413

+

The number of DB instances has reached the quota.

+

DBS.290005

+

404

+

The DB instance does not exist.

+

DBS.290006

+

500

+

Failed to process the request.

+

DBS.290011

+

404

+

The DB instance does not exist.

+

DBS.290013

+

404

+

Resource not found.

+

DBS.290015

+

500

+

Failed to process the request.

+

DBS.280618

+

400

+

Differential backup cycle invalid.

+

DBS.200475

+

400

+

New password should not equal to the old ones.

+

DBS.280234

+

400

+

Invalid DB instance name.

+

DBS.280006

+

400

+

The request is null. Enter a request parameter.

+

DBS.280203

+

400

+

This is a weak password. Please enter a strong password.

+

DBS.200068

+

400

+

This is a weak password. Please enter a strong password.

+

DBS.212033

+

403

+

The parameter template values cannot be changed because the DB instance is being operated.

+

DBS.280433

+

400

+

Invalid enterprise project ID.

+
+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0034.html b/docs/opengauss/api-ref/opengauss_api_0034.html new file mode 100644 index 000000000..3abcc4b45 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0034.html @@ -0,0 +1,16 @@ + + +

Obtaining a Project ID

+

Scenarios

When calling APIs, you need to specify the project ID in some URLs. To do so, you need to obtain the project ID first.

+
+

Obtaining a Project ID from the Console

  1. Register yourself on the management console and log in to it.
  2. Move your pointer over the username and select My Credential in the displayed drop-down list.

    On the My Credential page, view project IDs in the project list.

    +
    Figure 1 Viewing project IDs
    +

+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0036.html b/docs/opengauss/api-ref/opengauss_api_0036.html new file mode 100644 index 000000000..26d8a59e3 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0036.html @@ -0,0 +1,30 @@ + + +

Replication Mode Table

+

Replication mode table

+ +
+ + + + + + + + + +

Replication Mode

+

Description

+

Remarks

+

sync

+

Synchronous

+

N/A

+
+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0037.html b/docs/opengauss/api-ref/opengauss_api_0037.html new file mode 100644 index 000000000..b65aad40e --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0037.html @@ -0,0 +1,59 @@ + + +

DB Instance Class

+

This section describes the GaussDB(openGauss) DB instance class.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1 DB instance class

Instance Class

+

DB Engine

+

Spec Code

+

vCPUs

+

Memory (GB)

+

General-enhanced II

+

GaussDB(openGauss)

+

gaussdb.opengauss.ee.dn.m6.2xlarge.8.in

+

8

+

64

+

gaussdb.opengauss.ee.dn.m6.4xlarge.8.in

+

16

+

128

+

gaussdb.opengauss.ee.dn.m6.8xlarge.8.in

+

32

+

256

+

gaussdb.opengauss.ee.dn.m6.16xlarge.8.in

+

64

+

521

+
+
+
+
+ +
+ diff --git a/docs/opengauss/api-ref/opengauss_api_0038.html b/docs/opengauss/api-ref/opengauss_api_0038.html new file mode 100644 index 000000000..702d2e9d5 --- /dev/null +++ b/docs/opengauss/api-ref/opengauss_api_0038.html @@ -0,0 +1,20 @@ + + +

Change History

+
+
+ + + + + + + +

Released Date

+

Description

+

2020-11-30

+

This issue is the first official release.

+
+
+
+ diff --git a/docs/opengauss/api-ref/public_sys-resources/ExpandCollapse.js b/docs/opengauss/api-ref/public_sys-resources/ExpandCollapse.js new file mode 100644 index 000000000..116ddaabf --- /dev/null +++ b/docs/opengauss/api-ref/public_sys-resources/ExpandCollapse.js @@ -0,0 +1 @@ +var expandClassName="dropdownexpand";var collapseClassName="dropdowncollapse";var collapseTableClassName="dropdowncollapsetable";function ExpandorCollapseNode(a){a=a.parentNode;if(a.className==expandClassName){a.className=collapseClassName}else{a.className=expandClassName}}function ExpandorCollapseTableNode(a){a=a.parentNode;if(a.className==expandClassName){a.className=collapseTableClassName}else{a.className=expandClassName}}function ExpandorCollapseAllNodes(g,h,c){var a=g.getAttribute("title");var b=g.parentNode;if(a=="collapse"){g.setAttribute("title","expand");g.className="dropdownAllButtonexpand";g.innerHTML=h}else{g.setAttribute("title","collapse");g.className="dropdownAllButtoncollapse";g.innerHTML=c}var f=b.getElementsByTagName("*");for(var d=0;d-1){ExpandForHref(a.substring(a.lastIndexOf("#")+1))}}catch(c){}}; \ No newline at end of file diff --git a/docs/opengauss/api-ref/public_sys-resources/caution_3.0-en-us.png b/docs/opengauss/api-ref/public_sys-resources/caution_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..60f60762138fe7d98fa081415cf26a4943897779 GIT binary patch literal 2752 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:0}*[compact="no"]>li{margin-top:.53em}.liexpand{margin-top:1em;margin-bottom:1em}.sliexpand{margin-top:1em;margin-bottom:1em}.dlexpand{margin-top:1em;margin-bottom:1em}.ddexpand{margin-top:1em;margin-bottom:1em}.stepexpand{margin-top:.3em;margin-bottom:.3em}.substepexpand{margin-top:.3em;margin-bottom:.3em}div.imageleft{text-align:left}div.imagecenter{text-align:center}div.imageright{text-align:right}div.imagejustify{text-align:justify}div.noblankline{text-align:center}div.noblankline img{margin-top:0}pre.screen{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;background-color:#ddd;white-space:pre}pre.codeblock{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;background-color:#ddd;white-space:pre}.hrcopyright{color:#3f4e5d;margin-top:18pt}.hwcopyright{text-align:center}.comment{margin:2px 2px 2px 2px;font-family:Arial;font-size:10pt;background-color:#bfb;color:#000}.dropdownAllButtonexpand{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdownAllButtoncollapse{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;text-decoration:underline;color:#007af4}.dropdowntitle{background-repeat:no-repeat;background-position:0 4px;padding-left:15px;cursor:pointer;text-decoration:underline;color:#007af4}.dropdownexpand .dropdowntitle{background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapse .dropdowncontext{display:none}.dropdowncollapse .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdowncollapsetable{border:0}.dropdowncollapsetable .dropdowncontext{display:none}.dropdowncollapsetable .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}pre{font-size:10pt;font-weight:normal;margin-left:9;margin-top:2;margin-bottom:2}.termcolor{color:blue;cursor:pointer}#dhtmlgoodies_tooltip{background-color:#f0f0d2;border:1px solid #000;position:absolute;display:none;z-index:20000;padding:2px;font-size:.9em;-moz-border-radius:6px;font-family:"Trebuchet MS","Lucida Sans Unicode",Arial,sans-serif}#dhtmlgoodies_tooltipShadow{position:absolute;background-color:#555;display:none;z-index:10000;opacity:.7;filter:alpha(opacity=70);-khtml-opacity:.7;-moz-opacity:.7;-moz-border-radius:6px}.freeze{position:fixed;_position:absolute;_top:expression(eval(document.documentElement.scrollTop));left:10;top:0} \ No newline at end of file diff --git a/docs/opengauss/api-ref/public_sys-resources/commonltr_print.css b/docs/opengauss/api-ref/public_sys-resources/commonltr_print.css new file mode 100644 index 000000000..a59823141 --- /dev/null +++ b/docs/opengauss/api-ref/public_sys-resources/commonltr_print.css @@ -0,0 +1 @@ +body{font-size:12.0pt;margin:1.5em;margin-left:1.6cm}.msgph{font-family:Courier New}.rowlinecopyright{color:red;margin-top:10pt}.unresolved{background-color:skyblue}.noTemplate{background-color:yellow}.base{background-color:#fff}.nested0{margin-top:1em}.p{margin-top:1em}p{margin-top:.5em;margin-bottom:.5em}.note p{margin-top:.5em;margin-bottom:.5em}.tip p{margin-top:.5em;margin-bottom:.5em}.danger p{margin-top:.5em;margin-bottom:.5em}.warning p{margin-top:.5em;margin-bottom:.5em}.notice p{margin-top:.5em;margin-bottom:.5em}.caution p{margin-top:.5em;margin-bottom:.5em}.attention p{margin-top:.5em;margin-bottom:.5em}table p{margin-top:.2em;margin-bottom:.2em}table .p{margin-top:.4em;margin-bottom:.2em}.covertable{border:0;width:100% cellpadding:8pt;cellspacing:8pt}.cover_productname{font-size:15.0pt;font-family:"Arial"}.cover_manualtitle{font-size:24.0pt;font-weight:bold;font-family:"Arial"}.cover_manualsubtitle{font-size:18.0pt;font-weight:bold;font-family:"Arial"}.cover_heading{font-size:12.0pt;font-weight:bold;font-family:"Arial"}.cover_text{font-size:9.0pt;font-family:"Arial"}.tocheading,.heading1,.topictitle1{margin-top:40.0pt;margin-right:0;margin-bottom:20.0pt;margin-left:-1cm;text-align:left;border:0;border-bottom:solid windowtext .5pt;font-size:22.0pt;font-family:"Arial";font-weight:bold}.topictitlenumber1{font-size:72.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle2{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:-1cm;text-indent:0;font-size:18.0pt;font-family:"Arial";font-weight:bold}.topictitle3{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:16.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle4{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:14.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle5{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.blocklabel,.topictitle6{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.sectiontitle{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:-1cm;text-indent:0;font-size:13.0pt;font-family:"Arial";font-weight:bold}.tocentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:12.0pt;font-family:"Book Antiqua";font-weight:bold}.tocentry2{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry3{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry4{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry5{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tofentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman";font-weight:normal}.totentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman";font-weight:normal}.indexheading{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.indexentry1{margin-top:4pt;margin-right:0;margin-bottom:0;margin-left:0;line-height:12.0pt;font-size:12.0pt;font-family:"Times New Roman"}.indexentry2{margin-top:0;margin-right:0;margin-bottom:0;margin-left:24.0pt;line-height:12.0pt;font-size:12.0pt}.indexentry3{margin-top:0;margin-right:0;margin-bottom:0;margin-left:48pt;line-height:12.0pt;font-size:12.0pt}.figurenumber{font-weight:bold}.tablenumber{font-weight:bold}.familylinks{margin-top:1.5em;margin-bottom:1em}.figcap{font-size:11.0pt}.tablecap{font-size:11.0pt}.figdesc{font-style:normal}.fignone{margin-top:8.0pt}.figborder{border-style:solid;padding-left:3px;border-width:2px;padding-right:3px;margin-top:1em;border-color:Silver}.figsides{border-left:2px solid;padding-left:3px;border-right:2px solid;padding-right:3px;margin-top:1em;border-color:Silver}.figtop{border-top:2px solid;margin-top:1em;border-color:Silver}.figbottom{border-bottom:2px solid;border-color:Silver}.figtopbot{border-top:2px solid;border-bottom:2px solid;margin-top:1em;border-color:Silver}.ullinks{margin-left:0;list-style-type:none}.ulchildlink{margin-top:1em;margin-bottom:1em}.olchildlink{margin-top:1em;margin-bottom:1em;margin-left:1em}.linklist{margin-bottom:1em}.linklistwithchild{margin-left:1.5em;margin-bottom:1em}.sublinklist{margin-left:1.5em;margin-bottom:1em}.relconcepts{margin-left:1cm;margin-top:1em;margin-bottom:1em}.reltasks{margin-left:1cm;margin-top:1em;margin-bottom:1em}.relref{margin-left:1cm;margin-top:1em;margin-bottom:1em}.relinfo{margin-top:1em;margin-bottom:1em}.breadcrumb{font-size:smaller;margin-bottom:1em}.prereq{margin-left:0}.parentlink{margin-top:.6em;margin-bottom:.6em}.nextlink{margin-top:.6em;margin-bottom:.6em}.previouslink{margin-top:.6em;margin-bottom:.6em}.section{margin-top:1em;margin-bottom:1em}.example{margin-top:1em;margin-bottom:1em}table .note{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.note{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.notetitle{font-weight:bold;font-size:11.0pt}.notelisttitle{font-weight:bold}table .tip{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.tip{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.tiptitle{font-weight:bold;font-size:11.0pt}table .fastpath{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.fastpath{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.fastpathtitle{font-weight:bold;font-size:11.0pt}table .important{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.important{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.importanttitle{font-weight:bold;font-size:11.0pt}table .remember{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.remember{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.remembertitle{font-weight:bold;font-size:11.0pt}table .restriction{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.restriction{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.restrictiontitle{font-weight:bold;font-size:11.0pt}table .attention{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.attention{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}.attentiontitle{font-weight:bold}table .danger{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.dangertitle{font-weight:bold}.danger{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .notice{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.noticetitle{font-weight:bold}.notice{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .warning{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.warningtitle{font-weight:bold}.warning{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .caution{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}table caption{margin-top:8pt;text-align:left;font-weight:bold}.tablenoborder{margin-top:8pt}.cautiontitle{font-weight:bold}.caution{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}ul.simple{list-style-type:none}li ul{margin-top:.6em}li{margin-top:.6em;margin-bottom:.6em}.note li{margin-top:.2em;margin-bottom:.2em}.tip li{margin-top:.2em;margin-bottom:.2em}.danger li{margin-top:.2em;margin-bottom:.2em}.warning li{margin-top:.2em;margin-bottom:.2em}.notice li{margin-top:.2em;margin-bottom:.2em}.caution li{margin-top:.2em;margin-bottom:.2em}.attention li{margin-top:.2em;margin-bottom:.2em}table li{margin-top:.2em;margin-bottom:.2em}.firstcol{font-weight:bold}th{background-color:#cfcfcf}.bold{font-weight:bold}.boldItalic{font-weight:bold;font-style:italic}.italic{font-style:italic}.underlined{text-decoration:underline}.var{font-style:italic}.shortcut{text-decoration:underline}.dlterm{font-weight:bold}dd{margin-top:.5em;margin-bottom:.5em}.dltermexpand{font-weight:bold;margin-top:1em}*[compact="yes"]>li{margin-top:0}*[compact="no"]>li{margin-top:.53em}.liexpand{margin-top:1em;margin-bottom:1em}.sliexpand{margin-top:1em;margin-bottom:1em}.dlexpand{margin-top:1em;margin-bottom:1em}.ddexpand{margin-top:1em;margin-bottom:1em}.stepexpand{margin-top:1em;margin-bottom:1em}.substepexpand{margin-top:1em;margin-bottom:1em}table{margin-top:8pt;margin-bottom:10.0pt;width:100%}thead{font-size:10.0pt;font-family:"Book Antiqua";font-weight:bold}tbody{font-size:11.0pt}ol{margin-top:1em;margin-bottom:1em;margin-left:1.7em;-webkit-padding-start:0}ul{margin-top:1em;margin-bottom:1em;margin-left:1.2em;-webkit-padding-start:0}ol ul{list-style:disc}ul ul{list-style:square}ol ol{list-style-type:lower-alpha}table ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}table ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ul{margin-top:.4em;margin-bottom:.4em;list-style:square}table ol ol{margin-top:.4em;margin-bottom:.4em;list-style:lower-alpha}table ol ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}.substepthirdol{list-style-type:lower-roman}div.imageleft{text-align:left}div.imagecenter{text-align:center}div.imageright{text-align:right}div.imagejustify{text-align:justify}div.noblankline{text-align:center}div.noblankline img{margin-top:0}pre{font-size:10.0pt;border-width:2px;padding:2px;margin-top:5px;margin-bottom:5px;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}pre.screen{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;white-space:pre}pre.codeblock{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;white-space:pre}.dropdownAllButtonexpand{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdownAllButtoncollapse{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;text-decoration:underline;color:#007af4}.dropdowntitle{background-repeat:no-repeat;background-position:0 4px;padding-left:15px;cursor:pointer;text-decoration:underline;color:#007af4}.dropdownexpand .dropdowntitle{background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapse .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapsetable .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.prefacesectiontitle1{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:-1cm;text-indent:0;font-size:18.0pt;font-family:"Book Antiqua";font-weight:bold;overflow:auto}.termcolor{color:blue;cursor:pointer}#dhtmlgoodies_tooltip{background-color:#f0f0d2;border:1px solid #000;position:absolute;display:none;z-index:20000;padding:2px;font-size:.9em;-moz-border-radius:6px;font-family:"Trebuchet MS","Lucida Sans Unicode",Arial,sans-serif}#dhtmlgoodies_tooltipShadow{position:absolute;background-color:#555;display:none;z-index:10000;opacity:.7;filter:alpha(opacity=70);-khtml-opacity:.7;-moz-opacity:.7;-moz-border-radius:6px}.freeze{position:fixed;_position:absolute;_top:expression(eval(document.documentElement.scrollTop));left:10;top:0}.hrcopyright{color:#3f4e5d;margin-top:18pt;margin-left:-1cm}.hwcopyright{text-align:center;font-family:Arial;margin-left:-1cm} \ No newline at end of file diff --git a/docs/opengauss/api-ref/public_sys-resources/commonrtl.css b/docs/opengauss/api-ref/public_sys-resources/commonrtl.css new file mode 100644 index 000000000..f261da752 --- /dev/null +++ b/docs/opengauss/api-ref/public_sys-resources/commonrtl.css @@ -0,0 +1,2 @@ +/*! Copyright (c) Huawei Technologies Co., Ltd. 2020-2022. All rights reserved. */.msgph{font-family:Courier New}.unresolved{background-color:#87ceeb}.noTemplate{background-color:#ff0}.base{background-color:#fff}/*! Add space for top level topics */.nested0,.p{margin-top:1em}/*! div with class=p is used for paragraphs that contain blocks, to keep the XHTML valid *//*! Default of italics to set apart figure captions */.figcap,.italic,.var{font-style:italic}.figdesc{font-style:normal}/*! Use @frame to create frames on figures */.figborder{padding-left:3px;padding-right:3px;margin-top:1em;border:2px solid Silver}.figsides{margin-top:1em;padding-left:3px;padding-right:3px;border-left:2px solid Silver;border-right:2px solid Silver}.figtop{border-top:2px solid Silver;margin-top:1em}.figbottom{border-bottom:2px solid Silver}.figtopbot{border-top:2px solid Silver;border-bottom:2px solid Silver;margin-top:1em}/*! Most link groups are created with
. Ensure they have space before and after. */.ullinks,ul.simple{list-style-type:none}.attention,.danger,.ddexpand,.dlexpand,.example,.fastpath,.important,.liexpand,.linklist,.note,.notice,.olchildlink,.relconcepts,.relinfo,.relref,.reltasks,.remember,.restriction,.section,.sliexpand,.stepexpand,.substepexpand,.tip,.ulchildlink,.warning{margin-top:1em;margin-bottom:1em}.linklistwithchild,.sublinklist{margin-top:1em;margin-right:1.5em;margin-bottom:1em}.breadcrumb{font-size:smaller;margin-bottom:1em}.prereq{margin-right:20px}/*! Set heading sizes, getting smaller for deeper nesting */.topictitle1{font-size:1.34em;margin-top:0;margin-bottom:.1em}.topictitle2,.topictitle3,.topictitle4,.topictitle5,.topictitle6,.sectiontitle{font-size:1.17em}.topictitle2{margin-top:1pc;margin-bottom:.45em}.topictitle3{margin-top:1pc;margin-bottom:.17em;font-weight:700}.topictitle4{margin-top:.83em;font-weight:700}.topictitle5{font-weight:700}.topictitle6{font-style:italic}.sectiontitle{margin-top:1em;margin-bottom:0;color:#000;font-weight:700}/*! All note formats have the same default presentation */.attentiontitle,.bold,.cautiontitle,.dangertitle,.dlterm,.fastpathtitle,.firstcol,.importanttitle,.notelisttitle,.notetitle,.noticetitle,.parmname,.remembertitle,.restrictiontitle,.tiptitle,.uicontrol,.warningtitle{font-weight:700}.caution{font-weight:700;margin-bottom:1em}/*! Simple lists do not get a bullet *//*! Used on the first column of a table, when rowheader="firstcol" is used *//*! Various basic phrase styles */.boldItalic{font-weight:700;font-style:italic}.shortcut,.underlined{text-decoration:underline}/*! 2008-10-27 keyword采用跟随上下文的样式 +*//*! Default of bold for definition list terms *//*! Use CSS to expand lists with @compact="no" */.dltermexpand{font-weight:700;margin-top:1em}[compact="yes"]>li{margin-top:0}[compact="no"]>li{margin-top:.53em}/*! Align images based on @align on topic/image */div.imageleft,.text-align-left{text-align:left}div.imagecenter,.text-align-center{text-align:center}div.imageright,.text-align-right{text-align:right}div.imagejustify,.text-align-justify{text-align:justify}.cellrowborder{border-right:0;border-top:0;border-left:1px solid;border-bottom:1px solid}.row-nocellborder{border-left:hidden;border-right:0;border-top:0;border-bottom:1px solid}.cell-norowborder{border-top:0;border-bottom:hidden;border-right:0;border-left:1px solid}.nocellnorowborder{border:0;border-left:hidden;border-bottom:hidden}pre.codeblock,pre.screen{padding:5px;border:outset;background-color:#ccc;margin-top:2px;margin-bottom:2px;white-space:pre} \ No newline at end of file diff --git a/docs/opengauss/api-ref/public_sys-resources/danger_3.0-en-us.png b/docs/opengauss/api-ref/public_sys-resources/danger_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..47a9c723532a0ac410285e5152684262127922bf GIT binary patch literal 2771 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 literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-arrowdn.gif b/docs/opengauss/api-ref/public_sys-resources/icon-arrowdn.gif new file mode 100644 index 0000000000000000000000000000000000000000..84eec9be2f2ce458e888f8a9b803f9387247726a GIT binary patch literal 68 zcmZ?wbhEHbzkByxQ$u Mo$o?7J5~m305MV#!~g&Q literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-arrowrt.gif b/docs/opengauss/api-ref/public_sys-resources/icon-arrowrt.gif new file mode 100644 index 0000000000000000000000000000000000000000..39583d168d6db303b366b5b8c1780698a6bb6017 GIT binary patch literal 70 zcmZ?wbhEHbEMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-danger.gif b/docs/opengauss/api-ref/public_sys-resources/icon-danger.gif new file mode 100644 index 0000000000000000000000000000000000000000..079c79b263f4b48089f3b3256154c73e7699593f GIT binary patch literal 1086 zcmW+#YfRQ<6hA3LZMyP?V}KhnEtF{Q4vGxS52AozEVM85nq$#%tv8gRF!3GhgM?_) zd5Luv3SKrXFTGCpn$y>EMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-huawei.gif b/docs/opengauss/api-ref/public_sys-resources/icon-huawei.gif new file mode 100644 index 0000000000000000000000000000000000000000..a31d60f895af919d33855217ca02daf4093136d7 GIT binary patch literal 2767 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 GE&l)<3Z_>8 literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-notice.gif b/docs/opengauss/api-ref/public_sys-resources/icon-notice.gif new file mode 100644 index 0000000000000000000000000000000000000000..409070650a49518feb1624c624d814c3bfa63d2e GIT binary patch literal 962 zcmb7D&r8&C5S<{wSd_qn6)U)w5LOaRh!N}_*49lD)S!dZp@M<3gPIX|@UR9-fz+X3 zAaT9)OY{xZtO-;RC85Vab;JEUNIMS5f^r$7-e%-XK`j{0+N$CsgpRd6B1wp z8dw-cH^rU^H4`&7qgabf)l^K`l!66{q9$U(CKRO5%W5pfY)s&YQ6n`HBR0ZTum%`N zgC%I8hQ+`JG_WvCAt-W$sIn@BKCDG1qQWW^a=`*c7G+i@s0S(ZDv1&+K_2`7O-#cM z=m!ZX1Z#kSG+3e)Jg^wpfCd(Yb5TZ)U=a!DwsG z)Z`|1ejMK4ap%CHj;%+>T6=D++5I=uBbQ$fZ48cf{hV1}9&Njl-I}i7e0#6Hdug@s zsr-57_=gLr&9Ros$k}}M>tJ77=hEJ}iPaZ%8|P+gUbS|Oj}5I{|5nZZc)C1$e*Rj` d`09hYXJ4M@PhCx)dHK8WZo1*|*q+^V@*ncduk8Q; literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/icon-tip.gif b/docs/opengauss/api-ref/public_sys-resources/icon-tip.gif new file mode 100644 index 0000000000000000000000000000000000000000..c47bae05c9fd17c02a851d96cfac67bf194498d8 GIT binary patch literal 879 zcmchWKWmj?48@OdDOZPr)a61!OE4yGD)salg#|^Ix$qIEF#uk)V>D{95e^!2r`i+9t# zTMu5YtUcd+@#gp0tDE;9ug>oLIzL$6dOx4-t#2PKExu1KulwoYeD?Os#mVO%AMWih HO|EMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/opengauss/api-ref/public_sys-resources/note_3.0-en-us.png b/docs/opengauss/api-ref/public_sys-resources/note_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..57a0e1f53377b28fd80ceb393b035f8d9b8b392a GIT binary patch literal 1080 zcmV-81jqY{P)pI>PbXFRA}Dqnq7z+RTRg6r`*v5D@IBmL~4s5$SN3-f`YICkrqS^ z3O*?4J{4psT?>Nv;P$DA4|YKmeJd1v=!+{-P(e)MT23E4 zfpM5g?!;YNyXOywggfWv-aG#}pA%7499KRz`7Lmw98Q!I<#3`LPLvbnaH1TQ5UMEG zlVk_b1{y%CK&5Na8Kh~iV1CQyHSIUD=$Ui|Y1(mW{t2nlnW!hpqTT3)%#9tQ2@Hwc z4!jG@4brq%Pm%+`OlEvYXy4{GY5awd{We?gCpulWuT{Z9`oN)jk~9ZtI#ba@Tm#IC$eXI#i?GB7 z@C|Siuxi7{ffK+jzyrW_z5t&id2Xi{7fGOZ7RUNhF z=`q(YYu4B2zr}fA1-My6UW~A&C(H`Z0J{sqLLYb>ST?)$UTJH~j4 z)U5D`kx~@HyTBjADBwh`9UcOHGnaO3gx+o=^sFTdqcDs&7cD!S1Y1R9DJQENmMBXi zUX68u7SqPL=oS0?tDydiCJNY=lMCxo@cxg;Iw&H0tZv&cB5#jSkGc8v45{4-xAi@+ zH#c^6Llb3aTk2cp0#8`%*2*ZSb3DivIwje71|rV*JnwHI2e{V0 z?L}VtT_k|}D>qFKHz^_)cUMxtxkDBWXzz2D1oirfKkqs5Z>m~O`i+$JJR1>-NN>fsG-Q5hHbmeou}1??2@ zp;^{uvz{qy3k557pH|h^|K(Paf~;?wS^K(J)S`9Ki+p;|vZBS3*BostG+QG&8PgN& z=@C2h$ubuxBJTs&=XH#%UFPZrh=oAMNN{DPG_uReuDWcPESRPGOKD;{Otwcu3X@*QY`k0+@}-e yxT4{IZgHXpLI!Q!9RCwC$n{8}UWfaGMW8J;IUE8&LY1fUhGLTVa3!QBW+ZA*L=y*M3rfr5il?z?dJZieJ#47>M$@*mD4$1ecadv1qsU1#wR$;qu4Bmh4yS`Hi)ReG=4*#e zajgEV5YlLPaKTMvrW)|6L6Y@JtlU|tX}9u@d<^;|8a!TJ`kRn8mKIZX-z)%<^+`jn z738I}>P{CwooQ#@mc8ItdHsQ6rsk%O$iLY)*x7Zcj%}lwEK@`-=;otzSyX+&p9{kzQYbgSF@Q=2Qy+?#VW0=Vy|cYT&lQ@%;A2YQ{hH z9%ov+34{hBa~SnWOw39F;7p5`9$z4G?cJ)An*I*rb~&khdI=d8h1SkK)If-j5C2TB z8p4%r<<^31tR|Tw4Xs1QHMjMk20}yD8f4p%dXd_$me9Z-SWPlj8%nUOe;>LpUUAI& z1+$nxI~Q3>q`9q!{1-nPlEMa4o@e_SGSdvCrzn))J%_ut?ipfIn4e4CD=Pq4zT@D? zqk$|@wV{L*qfBG7mtFghv-Lntl$pcnz~kwNI)BUSUuvgmQEXp5=UThz?DmmjlsW$V z@)3#dyh6UbBYa%QD%n4gom-Glu20@0My{Xs3VRpaU9=0QxbJP-J)Pz^`?kOW30Tn z@ufYqb@gL4$<)8N0%S?kG%v#(IqvH7UvcW1v+a@N8!}9Baks0-uUUYP1beE1+)Q)S zUobczB2ql)J>S90pM1~e2X4k70q-59;@Rj(Ixc6Ok_Z$V@dbE+GNTrV;HlFQ=lRMeN%CX^J*|inqrfX$fdWuECU& zYE~#M%8xCgqI||*N`--7Xw)BgEZ#bB0-qYhW>q--LhLmBU*r0E*5+4PP+l2n2}rtV z_qXh+#jl32SrvAyo2R)OD=o_BoyYIMW>x6y_Tety7r)3^eF8`TK$3KP{`eA2F}YpN zxa|~0YP$+*PB&3e-M~W&UFbFHknL5q%yVT?GB=Ox3?p^VEh7*N@$03nevU0%RA*Qe zy8Bd~e78Ejsl=~x+vYF$e)B!#In3BC3Kw>)rNi4F>6}lnndnzTghB(1f9&nZP({}9 z<_Y#X?@5R5*rUdbm zZ9zPQB)-@t_#f`t1VTsxAtZr72uUD>BoIOp2q6gsLP&yt3mvdY+y=oIIs7M?<}pwN SX0_=60000=0&&navigator.userAgent.indexOf("opera")==-1&&document.all)?true:false;var xPos;var yPos;window.document.onmousemove=function(a){a=a||window.event;if(a.pageX){xPos=a.pageX;yPos=a.pageY}else{if(document.body!==null&&typeof document.body!=="undefined"){xPos=a.clientX+document.body.scrollLeft-document.body.clientLeft;yPos=a.clientY+document.body.scrollTop-document.body.clientTop}}};function showTooltip(e){if(document.body===null||typeof document.body==="undefined"){return}if(i==0){return}clickFlag=true;var f=Json.parse("jsonData."+e);var a=Math.max(document.body.clientWidth,document.documentElement.clientWidth)-20;if(!dhtmlgoodies_tooltipFlag){dhtmlgoodies_tooltip=document.createElement("DIV");dhtmlgoodies_tooltip.id="dhtmlgoodies_tooltip";dhtmlgoodies_tooltipShadow=document.createElement("DIV");dhtmlgoodies_tooltipShadow.id="dhtmlgoodies_tooltipShadow";document.body.appendChild(dhtmlgoodies_tooltip);document.body.appendChild(dhtmlgoodies_tooltipShadow);if(tooltip_is_msie){dhtmlgoodies_iframe=document.createElement("IFRAME");dhtmlgoodies_iframe.frameborder="5";dhtmlgoodies_iframe.style.backgroundColor="#FFFFFF";dhtmlgoodies_iframe.src="#";dhtmlgoodies_iframe.style.zIndex=100;dhtmlgoodies_iframe.style.position="absolute";document.body.appendChild(dhtmlgoodies_iframe)}}dhtmlgoodies_tooltip.style.display="block";dhtmlgoodies_tooltipShadow.style.display="block";if(tooltip_is_msie){dhtmlgoodies_iframe.style.display="block"}var b=Math.max(document.body.scrollTop,document.documentElement.scrollTop);if(navigator.userAgent.toLowerCase().indexOf("safari")>=0){b=0}var c=xPos+10;dhtmlgoodies_tooltip.style.width=null;dhtmlgoodies_tooltip.innerHTML=f;dhtmlgoodies_tooltip.style.left=c+"px";if(tooltip_is_msie){dhtmlgoodies_tooltip.style.top=yPos+20+b+"px"}else{dhtmlgoodies_tooltip.style.top=yPos+20+"px"}dhtmlgoodies_tooltipShadow.style.left=c+dhtmlgoodies_shadowSize+"px";if(tooltip_is_msie){dhtmlgoodies_tooltipShadow.style.top=yPos+20+b+dhtmlgoodies_shadowSize+"px"}else{dhtmlgoodies_tooltipShadow.style.top=yPos+20+dhtmlgoodies_shadowSize+"px"}if(dhtmlgoodies_tooltip.offsetWidth>dhtmlgoodies_tooltipMaxWidth){dhtmlgoodies_tooltip.style.width=dhtmlgoodies_tooltipMaxWidth+"px"}var d=dhtmlgoodies_tooltip.offsetWidth;if(da){dhtmlgoodies_tooltip.style.left=(dhtmlgoodies_tooltipShadow.style.left.replace("px","")-((c+d)-a))+"px";dhtmlgoodies_tooltipShadow.style.left=(dhtmlgoodies_tooltipShadow.style.left.replace("px","")-((c+d)-a)+dhtmlgoodies_shadowSize)+"px"}if(tooltip_is_msie){dhtmlgoodies_iframe.style.left=dhtmlgoodies_tooltip.style.left;dhtmlgoodies_iframe.style.top=dhtmlgoodies_tooltip.style.top;dhtmlgoodies_iframe.style.width=dhtmlgoodies_tooltip.offsetWidth+"px";dhtmlgoodies_iframe.style.height=dhtmlgoodies_tooltip.offsetHeight+"px"}}function hideTooltip(){i=0;clickFlag=false;if((dhtmlgoodies_tooltip!==null&&typeof dhtmlgoodies_tooltip!=="undefined")&&+(dhtmlgoodies_tooltip.style!==null&&typeof dhtmlgoodies_tooltip.style!=="undefined")){dhtmlgoodies_tooltip.style.display="none";dhtmlgoodies_tooltipShadow.style.display="none";if(tooltip_is_msie){dhtmlgoodies_iframe.style.display="none"}}if(timeId!==null&&typeof timeId!=="undefined"&&timeId!=""){clearTimeout(timeId)}}function showText(a){i=1;timeId=setTimeout(function(){showTooltip(a)},500)}function showText2(a){if(!clickFlag){i=1;showTooltip(a);i=0;if(timeId!==null&&typeof timeId!=="undefined"&&timeId!=""){clearTimeout(timeId)}}}function anchorScroll(b){var d=document.getElementsByName(b);if(d!=null&&d.length>0){var c=d[0];var a=c.getBoundingClientRect().left+(document.body.scrollLeft||(document.documentElement&&document.documentElement.scrollLeft));var e=c.getBoundingClientRect().top+(document.body.scrollTop||(document.documentElement&&document.documentElement.scrollTop));window.scrollTo(a,e-30)}}; \ No newline at end of file diff --git a/docs/opengauss/api-ref/public_sys-resources/warning_3.0-en-us.png b/docs/opengauss/api-ref/public_sys-resources/warning_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..def5c3565da51684d78479f45904c0360844c243 GIT binary patch literal 3164 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