Skip to main content
On this page

Coverage by target cloud

How the targets compare

Each row compares a capability of RDS PostgreSQL with its adaptation on each target. A dash means this row is not stated for that target.

Max adaptation

Runtime surface

Management surface

Limits

Infrastructure-only adaptation

Runtime surface

Management surface

Limits

On Google Cloud

How it works

Your application’s PostgreSQL driver connects directly to Cloud SQL for PostgreSQL. These database requests are the data plane. The driver and PostgreSQL wire protocol stay unchanged, and Tensor9 does not proxy or translate these queries. Management requests, such as snapshots, restore, replicas, failover, and configuration changes, form the control plane. Tensor9 serves the RDS API in the customer’s appliance and translates those requests to the target’s management API. The sections below describe which operations have equivalents and which return errors.
Database requests (SQL over pgwire) connect directly to Cloud SQL. The Tensor9 service adapter translates RDS API management calls to Cloud SQL admin API.Database requests (SQL over pgwire) connect directly to Cloud SQL. The Tensor9 service adapter translates RDS API management calls to Cloud SQL admin API.

Queries reach the database directly; only the management calls are translated.

Database connections

RDS for PostgreSQL and Cloud SQL run PostgreSQL. Your SQL, drivers, object-relational mappers (ORMs), prepared statements, data types, and transaction semantics remain unchanged. Your application connects directly to the database. RDS adds SQL helper functions for importing and exporting through S3 and invoking Lambda from a query. These AWS-specific functions have no equivalent on the target. Queries that call them return an error.

Database management

At runtime your application and operational tooling keep making the same RDS calls they make today: describe the instance, take a snapshot, restore to a point in time, add or promote a read replica, trigger a failover, stop and start, change the instance class or a parameter. The adapter accepts RDS requests, returns RDS response formats, and performs the supported operations on Cloud SQL: on-demand backups and restores, point-in-time restore, read replicas in-region and cross-region, manual failover, stop / start, and machine-type, storage, and database-flag updates. With Max, your tooling uses CreateDBInstance and DeleteDBInstance through the RDS adapter to create and remove a database on Cloud SQL. Tensor9 retains durable logical database state and reconciles it with the managed service: accepted requests are recorded, then the target resources are created or removed asynchronously. Use DescribeDBInstances to follow status and obtain the database endpoint. Your application’s SQL connection goes directly to the database. With the Infrastructure-only alternative, Tensor9 compiles the declared database infrastructure into native Cloud SQL resources. You manage those resources through the target’s own tools; serving runtime RDS API requests requires Max.
The Tensor9 service adapter handles RDS management requests using Cloud SQL admin API and returns RDS responses.The Tensor9 service adapter handles RDS management requests using Cloud SQL admin API and returns RDS responses.

Tensor9 translates RDS management requests to the target API and returns RDS responses.

Limitations

△ Where RDS and Cloud SQL stay different
  • Deletion is asynchronous and skips a final snapshot. DeleteDBInstance requires SkipFinalSnapshot=true and does not retain automated backups. Deletion protection must be disabled. The database remains in the deleting state until its native resources are gone; a failed teardown reports failure rather than successful removal.
  • Subnet groups place the private endpoint. An explicit DB subnet group retains adapted subnets from one VPC spanning at least two availability zones. Tensor9 selects a subnet deterministically and places the private connection endpoint there; Google manages the database compute in its own service network. The selected subnet must match the configured Google Cloud project, region, network and IPv4 range. Readiness requires an accepted private connection and, for public access, the public address. Public access with an explicit group also requires pre-existing private services access on that VPC and the configured client allowlist. Tensor9 does not create shared private services access, translate AWS security groups, or provide AWS split-horizon DNS. Without an explicit group, the configured network applies; Tensor9 does not create an AWS default subnet group.
  • Event subscriptions are not served. RDS event notifications publish to SNS; Cloud Monitoring is a different model with no direct counterpart.
  • Parameter groups retain their logical identity. Tensor9 retains named parameter groups and their overrides. Supported explicit PostgreSQL parameters become Cloud SQL database flags; the group object itself stays with Tensor9 rather than becoming a native object on Cloud SQL. The group family and PostgreSQL version must match, and target limits on allowed values and restart requirements still apply. RDS-specific parameters and settings outside the target’s settable list are rejected. Default groups are read-only. Changes marked pending-reboot wait for RebootDBInstance; immediate changes that require a restart are rejected. An attached group cannot be deleted or replaced, and source formulas are not supported.
  • RDS-specific settings have no counterpart. The CA certificate, Enhanced Monitoring, processor features, and Kerberos / AD domain join are RDS-specific.

Other considerations

Migration. Move existing data with a logical dump and restore, or use logical replication to reduce the cutover pause. Check the selected PostgreSQL version and required extensions, then switch application connections after validating the copied data. Operations. The customer owns the Cloud SQL service in their Google Cloud: maintenance windows, quotas, and pricing are Google’s. Features and capacity. The comparison table on this page lists database features and high-availability differences. Check the target service’s pricing and capacity limits when sizing the deployment.

On Azure

How it works

Your application’s PostgreSQL driver connects directly to Azure Database for PostgreSQL Flexible Server. These database requests are the data plane. The driver and PostgreSQL wire protocol stay unchanged, and Tensor9 does not proxy or translate these queries. Management requests, such as snapshots, restore, replicas, failover, and configuration changes, form the control plane. Tensor9 serves the RDS API in the customer’s appliance and translates those requests to the target’s management API. The sections below describe which operations have equivalents and which return errors.
Database requests (SQL over pgwire) connect directly to PostgreSQL Flexible Server. The Tensor9 service adapter translates RDS API management calls to Azure management API.Database requests (SQL over pgwire) connect directly to PostgreSQL Flexible Server. The Tensor9 service adapter translates RDS API management calls to Azure management API.

Queries reach the database directly; only the management calls are translated.

Database connections

Azure Database for PostgreSQL Flexible Server runs the same PostgreSQL engine as RDS. SQL, drivers, object-relational mappers (ORMs), prepared statements, data types, and transaction semantics remain unchanged. Your application connects directly to the server. RDS adds SQL helper functions for importing and exporting through S3 and invoking Lambda from a query. These AWS-specific functions have no equivalent on the target. Queries that call them return an error.

Database management

At runtime your application and operational tooling keep making the same RDS calls they make today: describe the instance, take a snapshot, restore to a point in time, add or promote a read replica, trigger a failover, stop and start, change the instance class or a parameter. The adapter accepts RDS requests, returns RDS response formats, and performs the supported operations on the Flexible Server: on-demand backups and restores, point-in-time restore, read replicas in-region and cross-region, manual failover, stop / start, and compute, storage, and server-parameter updates. With Max, your tooling uses CreateDBInstance and DeleteDBInstance through the RDS adapter to create and remove a database on Azure PostgreSQL Flexible Server. Tensor9 retains durable logical database state and reconciles it with the managed service: accepted requests are recorded, then the target resources are created or removed asynchronously. Use DescribeDBInstances to follow status and obtain the database endpoint. Your application’s SQL connection goes directly to the database. With the Infrastructure-only alternative, Tensor9 compiles the declared database infrastructure into native Azure PostgreSQL Flexible Server resources. You manage those resources through the target’s own tools; serving runtime RDS API requests requires Max.
The Tensor9 service adapter handles RDS management requests using Azure management API and returns RDS responses.The Tensor9 service adapter handles RDS management requests using Azure management API and returns RDS responses.

Tensor9 translates RDS management requests to the target API and returns RDS responses.

Limitations

△ Where RDS and PostgreSQL Flexible Server stay different
  • Event subscriptions are not served. RDS event notifications publish to SNS; Azure Monitor is a different model with no direct counterpart.
  • Parameter groups retain their logical identity. Tensor9 retains named parameter groups and their overrides. Supported explicit PostgreSQL parameters become Azure server parameters; the group object itself stays with Tensor9 rather than becoming a native object on the Flexible Server. The group family and PostgreSQL version must match, and target limits on allowed values and restart requirements still apply. RDS-specific parameters and settings outside the target’s settable list are rejected.
  • RDS-specific settings have no counterpart. The CA certificate, Enhanced Monitoring, processor features, and Kerberos / AD domain join are RDS-specific.

Other considerations

Migration. Move existing data with a logical dump and restore, or use logical replication to reduce the cutover pause. Check the selected PostgreSQL version and required extensions, then switch application connections after validating the copied data. Operations. The customer owns the Flexible Server in their Azure subscription: maintenance windows, quotas, and pricing are Microsoft’s. Features and capacity. The comparison table on this page lists database features and high-availability differences. Check the target service’s pricing and capacity limits when sizing the deployment.

On OCI

How it works

Your application’s PostgreSQL driver connects directly to OCI Database with PostgreSQL. These database requests are the data plane. The driver and PostgreSQL wire protocol stay unchanged, and Tensor9 does not proxy or translate these queries. Management requests, such as snapshots, restore, replicas, failover, and configuration changes, form the control plane. Tensor9 serves the RDS API in the customer’s appliance and translates those requests to the target’s management API. The sections below describe which operations have equivalents and which return errors.
Database requests (SQL over pgwire) connect directly to OCI PostgreSQL. The Tensor9 service adapter translates RDS API management calls to OCI management API.Database requests (SQL over pgwire) connect directly to OCI PostgreSQL. The Tensor9 service adapter translates RDS API management calls to OCI management API.

Queries reach the database directly; only the management calls are translated.

Database connections

OCI Database with PostgreSQL runs the same engine as RDS for PostgreSQL. SQL, drivers, object-relational mappers (ORMs), prepared statements, data types, and transaction semantics remain unchanged. Your application connects directly to the database. RDS adds SQL helper functions for importing and exporting through S3 and invoking Lambda from a query. These AWS-specific functions have no equivalent on the target. Queries that call them return an error.

Database management

At runtime your application and operational tooling keep making the same RDS calls they make today. The adapter accepts RDS requests, returns RDS response formats, and performs the supported operations on OCI where a counterpart exists: on-demand backups and restore-from-backup, in-region read replicas, stop / start, and compute, storage, and configuration updates. The documented adapter mapping does not promise translation of every native OCI capability into RDS semantics; the limitations below distinguish those boundaries. Each unsupported operation returns an error. With Max, your tooling uses CreateDBInstance and DeleteDBInstance through the RDS adapter to create and remove a database on OCI PostgreSQL. Tensor9 retains durable logical database state and reconciles it with the managed service: accepted requests are recorded, then the target resources are created or removed asynchronously. Use DescribeDBInstances to follow status and obtain the database endpoint. Your application’s SQL connection goes directly to the database. With the Infrastructure-only alternative, Tensor9 compiles the declared database infrastructure into native OCI PostgreSQL resources. You manage those resources through the target’s own tools; serving runtime RDS API requests requires Max.
The Tensor9 service adapter handles RDS management requests using OCI management API and returns RDS responses.The Tensor9 service adapter handles RDS management requests using OCI management API and returns RDS responses.

Tensor9 translates RDS management requests to the target API and returns RDS responses.

Limitations

△ Where RDS and OCI PostgreSQL stay different
  • Parameter groups retain their logical identity. Tensor9 retains named parameter groups and their overrides. Supported explicit PostgreSQL parameters become OCI PostgreSQL settings; the group object itself stays with Tensor9 rather than becoming a native object on OCI PostgreSQL. The group family and PostgreSQL version must match, and target limits on allowed values and restart requirements still apply. RDS-specific parameters and settings outside the target’s settable list are rejected.
  • Native point-in-time recovery needs a configured policy. OCI retains WAL and periodic backups under a point-in-time recovery policy. Recovery creates a new database system at a timestamp within the active recovery window. The documented adapter mapping does not promise AWS point-in-time restore translation.
  • Native local failover is separate from AWS failover translation. OCI exposes FailoverDbSystem for user-initiated failover to an existing local replica. The documented adapter mapping does not promise translation of the AWS failover operation.
  • Native cross-region standbys do not establish the AWS replica mapping. OCI supports readable warm standby systems in up to three disaster recovery regions. Replication is asynchronous and can lag; promotion and switchover are manual, with no automatic cross-region failover. Restore is not supported for either the primary or warm standby while configured for this replication. The documented adapter mapping does not promise AWS cross-region replica semantics.
  • No in-place major-version upgrade. Major PostgreSQL upgrades on OCI are create-new-and-migrate.
  • The shared RDS gaps apply here too. Event subscriptions, rds.* parameters, and RDS-specific settings (the CA certificate, Enhanced Monitoring, Kerberos / AD) have no counterpart, as on every target.

Other considerations

Migration. Move existing data with a logical dump and restore, or use logical replication to reduce the cutover pause. Check the selected PostgreSQL version and required extensions, then switch application connections after validating the copied data. Operations. The customer owns the database service in their OCI tenancy: maintenance windows, quotas, and pricing are Oracle’s. Features and capacity. The comparison table on this page lists database features and high-availability differences. Check the target service’s pricing and capacity limits when sizing the deployment.

On Private Kubernetes

How it works

Your application’s PostgreSQL driver connects directly to CloudNativePG. These database requests are the data plane. The driver and PostgreSQL wire protocol stay unchanged, and Tensor9 does not proxy or translate these queries. Management requests, such as snapshots, restore, replicas, failover, and configuration changes, form the control plane. Tensor9 serves the RDS API in the customer’s appliance and translates those requests to the target’s management API. The sections below describe which operations have equivalents and which return errors.
Database requests (SQL over pgwire) connect directly to CloudNativePG. The Tensor9 service adapter translates RDS API management calls to CloudNativePG resources.Database requests (SQL over pgwire) connect directly to CloudNativePG. The Tensor9 service adapter translates RDS API management calls to CloudNativePG resources.

Queries reach the database directly; only the management calls are translated.

Database connections

CloudNativePG runs PostgreSQL as a replicated cluster on Kubernetes. Your SQL, drivers, object-relational mappers (ORMs), prepared statements, data types, and transaction semantics remain unchanged. Your application connects directly to the cluster. RDS adds SQL helper functions for importing and exporting through S3 and invoking Lambda from a query. These AWS-specific functions have no equivalent on the target. Queries that call them return an error.

Database management

At runtime your application and operational tooling keep making the same RDS calls they make today. The adapter accepts RDS requests, returns RDS response formats, and performs the supported operations through CloudNativePG’s Kubernetes resources: backups and restores onto its backup and recovery objects, point-in-time restore onto its native PITR, read replicas onto the cluster’s instance count, manual failover onto replica promotion, stop / start onto hibernating and resuming the cluster while retaining its storage, and parameter changes onto the cluster’s PostgreSQL configuration. Managed connection pooling (the role RDS Proxy plays) is served by CloudNativePG’s built-in pooler. When your product is deployed into the customer environment, Tensor9 compiles the database your stack already declares into the equivalent CloudNativePG resources and sets the endpoint and credentials in your application’s configuration. The control-plane adapter then covers the management calls your running system makes.
The Tensor9 service adapter handles RDS management requests using CloudNativePG resources and returns RDS responses.The Tensor9 service adapter handles RDS management requests using CloudNativePG resources and returns RDS responses.

Tensor9 translates RDS management requests to the target API and returns RDS responses.

Limitations

△ Where RDS and CloudNativePG stay different
  • No cross-region read scale-out. The appliance runs a single CloudNativePG cluster; a second region would need a second appliance.
  • Events are Kubernetes-native. RDS event notifications publish to SNS; here the equivalents are Kubernetes events and Prometheus alerts, a different model.
  • Parameter groups become individual settings. Each PostgreSQL parameter translates to the cluster’s configuration; the group object itself and rds.* parameters are not supported on the target.
  • RDS-specific settings have no counterpart. The CA certificate, Enhanced Monitoring, processor features, and Kerberos / AD domain join are RDS-specific.

Other considerations

Migration. Move existing data with a logical dump and restore, or use logical replication to reduce the cutover pause. Check the selected PostgreSQL version and required extensions, then switch application connections after validating the copied data. Operations. CloudNativePG is self-operated: after cutover the customer’s team runs the cluster (backups, upgrades, failover drills), with no cloud database vendor behind it. Features and capacity. The comparison table on this page lists database features and high-availability differences. Check the target service’s pricing and capacity limits when sizing the deployment.

Service level agreements

These tables show Tensor9’s standard service levels and adapters whose standard terms are still being defined. Your signed agreement determines the SLAs, covered adapters and operations, limits, remedies and support terms that apply to your deployment.
Listed terms cover requests sent through this service adapter. They do not cover direct connections to the target service or replace the cloud provider’s own SLA. Each origin-to-target pair has its own terms or an explicit pending status. See the SLA tables, measurement rules, and scaling conditions.

RDS PostgreSQL to PostgreSQL Flexible Server

What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA. How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded. Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.

What this adapter does

For azure::1.0.0::postgresql::flexible, these rows apply to the RDS/Aurora API adapter, not to native PostgreSQL or MySQL connections. Application SQL commonly goes directly to the target database and therefore has no adapter translation latency to guarantee. The RDS control runtime retains logical intent, exposes status and reconciles target resources. The selected profile defines which directed operations and request options are covered.

How the latency targets were chosen

Bounded database status responses: 20 ms monthly p99. DescribeDBClusterSnapshots, DescribeDBClusters, DescribeDBInstances, DescribeDBSnapshots. The control adapter reads its durable database records and checks native status; reading the adapter’s stored request history and current resource records counts as fabric work. Database lifecycle request acceptance: 30 ms monthly p99. CreateDBClusterSnapshot, CreateDBInstanceReadReplica, CreateDBSnapshot, DescribeDBClusters, DescribeDBInstances, FailoverDBCluster, ModifyDBCluster, ModifyDBInstance, PromoteReadReplica, RebootDBInstance, RestoreDBClusterFromSnapshot, RestoreDBClusterToPointInTime, RestoreDBInstanceFromDBSnapshot, RestoreDBInstanceToPointInTime, StartDBInstance, StopDBInstance. The RDS adapter durably records the requested change before its background workers update target resources. Waiting for those adapter records and coordination still counts as fabric time, not database query time. Bounded database parameter requests: 20 ms monthly p99. DescribeDBParameters, ModifyDBClusterParameterGroup, ModifyDBParameterGroup. Parameter validation and logical-group persistence precede mapping to target flags; provider restart timing is distinct from adapter request handling. Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.

What counts toward latency

For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.

Availability and failures

The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.

Scaling and target-service capacity

Control-plane load is measured in logical resources, status polling and concurrent changes, not application SQL QPS. Aggressive Describe loops can exhaust adapter/log capacity even when database query load is small. Tensor9 scales the API and reconciliation workers within agreed resource and polling limits; the customer selects database compute, storage, connections and HA. Native database provisioning or failover speed cannot be improved merely by scaling control-plane replicas. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.

Data and behavior guarantees

A successful lifecycle response must accurately identify accepted work and logical state, not falsely claim that the target is already ready. Reconciliation must not apply one logical database’s configuration to another. Unsupported engine flags, cross-region semantics and AWS-specific SQL remain explicitly limited by the profile. Backup retention, database data durability, query consistency and target failover recovery are not implicitly replaced by this control-plane SLA.

Example and diagnosis

Modify orders-db to change an allowed parameter and poll its status at an agreed interval. The request-acceptance row covers adapter validation and durable intent; a database restart can take longer without breaching that row. Separately measure an application’s SELECT directly against the target endpoint: that SQL latency is not the RDS adapter’s 20 or 30 ms control budget. Use tensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.

RDS PostgreSQL to PostgreSQL (CloudNativePG)

What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA. How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded. Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.

What this adapter does

For cloudnative::1.0.0::postgresql, these rows apply to the RDS/Aurora API adapter, not to native PostgreSQL or MySQL connections. Application SQL commonly goes directly to the target database and therefore has no adapter translation latency to guarantee. The RDS control runtime retains logical intent, exposes status and reconciles target resources. The selected profile defines which directed operations and request options are covered.

How the latency targets were chosen

Bounded database status responses: 20 ms monthly p99. DescribeDBClusterSnapshots, DescribeDBClusters, DescribeDBInstances, DescribeDBSnapshots. The control adapter reads its durable database records and checks native status; reading the adapter’s stored request history and current resource records counts as fabric work. Database lifecycle request acceptance: 30 ms monthly p99. CreateDBClusterSnapshot, CreateDBInstanceReadReplica, CreateDBSnapshot, DescribeDBClusters, DescribeDBInstances, FailoverDBCluster, ModifyDBCluster, ModifyDBInstance, PromoteReadReplica, RebootDBInstance, RestoreDBClusterFromSnapshot, RestoreDBClusterToPointInTime, RestoreDBInstanceFromDBSnapshot, RestoreDBInstanceToPointInTime, StartDBInstance, StopDBInstance. The RDS adapter durably records the requested change before its background workers update target resources. Waiting for those adapter records and coordination still counts as fabric time, not database query time. Bounded database parameter requests: 20 ms monthly p99. DescribeDBParameters, ModifyDBClusterParameterGroup, ModifyDBParameterGroup. Parameter validation and logical-group persistence precede mapping to target flags; provider restart timing is distinct from adapter request handling. Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.

What counts toward latency

For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.

Availability and failures

The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.

Scaling and target-service capacity

Control-plane load is measured in logical resources, status polling and concurrent changes, not application SQL QPS. Aggressive Describe loops can exhaust adapter/log capacity even when database query load is small. Tensor9 scales the API and reconciliation workers within agreed resource and polling limits; the customer selects database compute, storage, connections and HA. Native database provisioning or failover speed cannot be improved merely by scaling control-plane replicas. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.

Data and behavior guarantees

A successful lifecycle response must accurately identify accepted work and logical state, not falsely claim that the target is already ready. Reconciliation must not apply one logical database’s configuration to another. Unsupported engine flags, cross-region semantics and AWS-specific SQL remain explicitly limited by the profile. Backup retention, database data durability, query consistency and target failover recovery are not implicitly replaced by this control-plane SLA.

Example and diagnosis

Modify orders-db to change an allowed parameter and poll its status at an agreed interval. The request-acceptance row covers adapter validation and durable intent; a database restart can take longer without breaching that row. Separately measure an application’s SELECT directly against the target endpoint: that SQL latency is not the RDS adapter’s 20 or 30 ms control budget. Use tensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.

RDS PostgreSQL to PostgreSQL

What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA. How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded. Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.

What this adapter does

For digitalocean::1.0.0::database::postgresql, these rows apply to the RDS/Aurora API adapter, not to native PostgreSQL or MySQL connections. Application SQL commonly goes directly to the target database and therefore has no adapter translation latency to guarantee. The RDS control runtime retains logical intent, exposes status and reconciles target resources. The selected profile defines which directed operations and request options are covered.

How the latency targets were chosen

Bounded database status responses: 20 ms monthly p99. DescribeDBInstances. The control adapter reads its durable database records and checks native status; reading the adapter’s stored request history and current resource records counts as fabric work. Database lifecycle request acceptance: 30 ms monthly p99. CreateDBInstance, CreateDBInstanceReadReplica, CreateDBSnapshot, DeleteDBInstance, DescribeDBInstances, ModifyDBInstance, PromoteReadReplica, RebootDBInstance, RestoreDBInstanceFromDBSnapshot, RestoreDBInstanceToPointInTime. The RDS adapter durably records the requested change before its background workers update target resources. Waiting for those adapter records and coordination still counts as fabric time, not database query time. Bounded database parameter requests: 20 ms monthly p99. DescribeDBParameters, ModifyDBClusterParameterGroup, ModifyDBParameterGroup. Parameter validation and logical-group persistence precede mapping to target flags; provider restart timing is distinct from adapter request handling. Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.

What counts toward latency

For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.

Availability and failures

The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.

Scaling and target-service capacity

Control-plane load is measured in logical resources, status polling and concurrent changes, not application SQL QPS. Aggressive Describe loops can exhaust adapter/log capacity even when database query load is small. Tensor9 scales the API and reconciliation workers within agreed resource and polling limits; the customer selects database compute, storage, connections and HA. Native database provisioning or failover speed cannot be improved merely by scaling control-plane replicas. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.

Data and behavior guarantees

A successful lifecycle response must accurately identify accepted work and logical state, not falsely claim that the target is already ready. Reconciliation must not apply one logical database’s configuration to another. Unsupported engine flags, cross-region semantics and AWS-specific SQL remain explicitly limited by the profile. Backup retention, database data durability, query consistency and target failover recovery are not implicitly replaced by this control-plane SLA.

Example and diagnosis

Modify orders-db to change an allowed parameter and poll its status at an agreed interval. The request-acceptance row covers adapter validation and durable intent; a database restart can take longer without breaching that row. Separately measure an application’s SELECT directly against the target endpoint: that SQL latency is not the RDS adapter’s 20 or 30 ms control budget. Use tensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.

RDS PostgreSQL to Cloud SQL for PostgreSQL

What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA. How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded. Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.

What this adapter does

For google::1.0.0::cloudsql::postgresql, these rows apply to the RDS/Aurora API adapter, not to native PostgreSQL or MySQL connections. Application SQL commonly goes directly to the target database and therefore has no adapter translation latency to guarantee. The RDS control runtime retains logical intent, exposes status and reconciles target resources. The selected profile defines which directed operations and request options are covered.

How the latency targets were chosen

Bounded database status responses: 20 ms monthly p99. DescribeDBClusterSnapshots, DescribeDBClusters, DescribeDBInstances, DescribeDBSnapshots. The control adapter reads its durable database records and checks native status; reading the adapter’s stored request history and current resource records counts as fabric work. Database lifecycle request acceptance: 30 ms monthly p99. CreateDBClusterSnapshot, CreateDBInstanceReadReplica, CreateDBSnapshot, DescribeDBClusters, DescribeDBInstances, FailoverDBCluster, ModifyDBCluster, ModifyDBInstance, PromoteReadReplica, RebootDBInstance, RestoreDBClusterFromSnapshot, RestoreDBClusterToPointInTime, RestoreDBInstanceFromDBSnapshot, RestoreDBInstanceToPointInTime, StartDBInstance, StopDBInstance. The RDS adapter durably records the requested change before its background workers update target resources. Waiting for those adapter records and coordination still counts as fabric time, not database query time. Bounded database parameter requests: 20 ms monthly p99. DescribeDBParameters, ModifyDBClusterParameterGroup, ModifyDBParameterGroup. Parameter validation and logical-group persistence precede mapping to target flags; provider restart timing is distinct from adapter request handling. Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.

What counts toward latency

For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.

Availability and failures

The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.

Scaling and target-service capacity

Control-plane load is measured in logical resources, status polling and concurrent changes, not application SQL QPS. Aggressive Describe loops can exhaust adapter/log capacity even when database query load is small. Tensor9 scales the API and reconciliation workers within agreed resource and polling limits; the customer selects database compute, storage, connections and HA. Native database provisioning or failover speed cannot be improved merely by scaling control-plane replicas. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.

Data and behavior guarantees

A successful lifecycle response must accurately identify accepted work and logical state, not falsely claim that the target is already ready. Reconciliation must not apply one logical database’s configuration to another. Unsupported engine flags, cross-region semantics and AWS-specific SQL remain explicitly limited by the profile. Backup retention, database data durability, query consistency and target failover recovery are not implicitly replaced by this control-plane SLA.

Example and diagnosis

Modify orders-db to change an allowed parameter and poll its status at an agreed interval. The request-acceptance row covers adapter validation and durable intent; a database restart can take longer without breaching that row. Separately measure an application’s SELECT directly against the target endpoint: that SQL latency is not the RDS adapter’s 20 or 30 ms control budget. Use tensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.

RDS PostgreSQL to OCI Database with PostgreSQL

What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA. How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded. Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.

What this adapter does

For oci::1.0.0::psql, these rows apply to the RDS/Aurora API adapter, not to native PostgreSQL or MySQL connections. Application SQL commonly goes directly to the target database and therefore has no adapter translation latency to guarantee. The RDS control runtime retains logical intent, exposes status and reconciles target resources. The selected profile defines which directed operations and request options are covered.

How the latency targets were chosen

Bounded database status responses: 20 ms monthly p99. DescribeDBClusterSnapshots, DescribeDBClusters, DescribeDBInstances, DescribeDBSnapshots. The control adapter reads its durable database records and checks native status; reading the adapter’s stored request history and current resource records counts as fabric work. Database lifecycle request acceptance: 30 ms monthly p99. CreateDBClusterSnapshot, CreateDBInstanceReadReplica, CreateDBSnapshot, DescribeDBClusters, DescribeDBInstances, ModifyDBCluster, ModifyDBInstance, PromoteReadReplica, RestoreDBClusterFromSnapshot, RestoreDBInstanceFromDBSnapshot, StartDBInstance, StopDBInstance. The RDS adapter durably records the requested change before its background workers update target resources. Waiting for those adapter records and coordination still counts as fabric time, not database query time. Bounded database parameter requests: 20 ms monthly p99. DescribeDBParameters, ModifyDBClusterParameterGroup, ModifyDBParameterGroup. Parameter validation and logical-group persistence precede mapping to target flags; provider restart timing is distinct from adapter request handling. Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.

What counts toward latency

For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.

Availability and failures

The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.

Scaling and target-service capacity

Control-plane load is measured in logical resources, status polling and concurrent changes, not application SQL QPS. Aggressive Describe loops can exhaust adapter/log capacity even when database query load is small. Tensor9 scales the API and reconciliation workers within agreed resource and polling limits; the customer selects database compute, storage, connections and HA. Native database provisioning or failover speed cannot be improved merely by scaling control-plane replicas. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.

Data and behavior guarantees

A successful lifecycle response must accurately identify accepted work and logical state, not falsely claim that the target is already ready. Reconciliation must not apply one logical database’s configuration to another. Unsupported engine flags, cross-region semantics and AWS-specific SQL remain explicitly limited by the profile. Backup retention, database data durability, query consistency and target failover recovery are not implicitly replaced by this control-plane SLA.

Example and diagnosis

Modify orders-db to change an allowed parameter and poll its status at an agreed interval. The request-acceptance row covers adapter validation and durable intent; a database restart can take longer without breaching that row. Separately measure an application’s SELECT directly against the target endpoint: that SQL latency is not the RDS adapter’s 20 or 30 ms control budget. Use tensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.

RDS PostgreSQL to Scaleway Managed Database for PostgreSQL

SLA status: Not applicable This mapping provisions a native database. SQL clients connect directly to it; this directed mapping does not expose an RDS management adapter endpoint. Database availability and query latency are covered by the database provider, not a Tensor9 request-processing SLA.

Debug this service

For requests through a service adapter, use Explain and request diagnostics to investigate the selected mapping. Follow the BYOC service-adapter debugging runbook to capture and interpret the diagnostic evidence. Service Catalog.