{"record":{"id":"9bbeb81e7508c7d7","repo":"apache/beam","slug":"withthrottlingtargetms-has-been-removed-and-does-not-have","errorCode":null,"errorMessage":"withThrottlingTargetMs has been removed and does not have effect.","messagePattern":"withThrottlingTargetMs has been removed and does not have effect\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigtable/BigtableIO.java","lineNumber":1149,"sourceCode":"     * #withMaxOutstandingElements(long)} and {@link #withMaxOutstandingBytes(long)}, which is\n     * always enabled on batch writes and limits the number of outstanding requests to the Bigtable\n     * server.\n     *\n     * <p>Does not modify this object.\n     */\n    public Write withFlowControl(boolean enableFlowControl) {\n      BigtableWriteOptions options = getBigtableWriteOptions();\n      return toBuilder()\n          .setBigtableWriteOptions(options.toBuilder().setFlowControl(enableFlowControl).build())\n          .build();\n    }\n\n    /**\n     * @deprecated This method has been deprecated in Beam 2.60.0. It does not have an effect.\n     */\n    @Deprecated\n    public Write withThrottlingTargetMs(int throttlingTargetMs) {\n      LOG.warn(\"withThrottlingTargetMs has been removed and does not have effect.\");\n      return this;\n    }\n\n    /**\n     * @deprecated This method has been deprecated in Beam 2.60.0. It does not have an effect.\n     */\n    @Deprecated\n    public Write withThrottlingReportTargetMs(int throttlingReportTargetMs) {\n      LOG.warn(\"withThrottlingReportTargetMs has been removed and does not have an effect.\");\n      return this;\n    }\n\n    public Write withErrorHandler(ErrorHandler<BadRecord, ?> badRecordErrorHandler) {\n      return toBuilder()\n          .setBadRecordErrorHandler(badRecordErrorHandler)\n          .setBadRecordRouter(BadRecordRouter.RECORDING_ROUTER)\n          .build();\n    }","sourceCodeStart":1131,"sourceCodeEnd":1167,"githubUrl":"https://github.com/apache/beam/blob/12126d8942aaf848030c478b4c6a28c6af861c66/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigtable/BigtableIO.java#L1131-L1167","documentation":"BigtableIO.Write.withThrottlingTargetMs(int) was deprecated in Beam 2.60.0 because the underlying Bigtable client no longer honors a caller-supplied throttling target. The method is kept for source compatibility but is a no-op that only logs this warning and returns the unchanged Write transform.","triggerScenarios":"Any call to BigtableIO.write().withThrottlingTargetMs(n) on Beam 2.60.0 or later.","commonSituations":"Upgrading a pipeline from Beam <2.60 to 2.60+ where throttling was explicitly tuned; copy-pasted pipeline configuration that sets throttlingTargetMs; IDE auto-suggest still resolves the deprecated method so it compiles silently.","solutions":["Remove the withThrottlingTargetMs call — it has no effect.","Tune throughput with Bigtable instance-level autoscaling or client-level flow control settings instead.","Suppress or fix the deprecation warning during the SDK upgrade review.","Pin to Beam 2.59.x only if the old throttling behavior is strictly required (not recommended)."],"exampleFix":"// before\nBigtableIO.write().withTableId(tableId).withThrottlingTargetMs(100)\n// after\nBigtableIO.write().withTableId(tableId)","handlingStrategy":"validation","validationCode":"// Detect removed API usage before upgrading:\ngrep -R \"withThrottlingTargetMs\" pipeline/src/ || echo \"safe to upgrade to Beam 2.60+\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Remove calls to methods deprecated in Beam release notes before upgrading.","Run builds with -Xlint:deprecation to surface no-op deprecated calls.","Tune Bigtable throughput via instance autoscaling instead of client-side throttling settings."],"tags":["bigtable","deprecated","configuration","beam"],"backgroundTag":"deprecated-api-usage","analyzedSha":"12126d8942aaf848030c478b4c6a28c6af861c66","analyzedAt":"2026-09-13T01:50:10.254Z","contentChangedAt":"2026-09-13T01:50:10.254Z","schemaVersion":2},"datasetVersion":"2026-09-20T03:17:13.778Z"}