diff options
author | Derek Murray <mrry@google.com> | 2018-09-26 12:56:29 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-09-26 13:00:41 -0700 |
commit | b61ca2d62ab9792e1f386c2e598fee4d07b51f1c (patch) | |
tree | d29aa9225a8703a3bd26f39c447b07444454d995 /tensorflow/contrib/bigtable | |
parent | 6a787235b95dd3040fc5ff7fb7104585e746c66a (diff) |
Fix leaks of a BigtableTableResource in various Bigtable ops.
PiperOrigin-RevId: 214653279
Diffstat (limited to 'tensorflow/contrib/bigtable')
6 files changed, 6 insertions, 0 deletions
diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_lookup_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_lookup_dataset_op.cc index 11f530e82a..2c6317157d 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_lookup_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_lookup_dataset_op.cc @@ -28,6 +28,7 @@ class BigtableLookupDatasetOp : public UnaryDatasetOpKernel { DatasetBase** output) override { BigtableTableResource* table; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 1), &table)); + core::ScopedUnref scoped_unref(table); std::vector<string> column_families; std::vector<string> columns; diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_prefix_key_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_prefix_key_dataset_op.cc index 5cab729d9c..92a3658667 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_prefix_key_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_prefix_key_dataset_op.cc @@ -31,6 +31,7 @@ class BigtablePrefixKeyDatasetOp : public DatasetOpKernel { BigtableTableResource* resource; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 0), &resource)); + core::ScopedUnref scoped_unref(resource); *output = new Dataset(ctx, resource, std::move(prefix)); } diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_range_key_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_range_key_dataset_op.cc index 4dc4647bd2..bd8805a382 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_range_key_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_range_key_dataset_op.cc @@ -34,6 +34,7 @@ class BigtableRangeKeyDatasetOp : public DatasetOpKernel { BigtableTableResource* resource; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 0), &resource)); + core::ScopedUnref scoped_unref(resource); *output = new Dataset(ctx, resource, std::move(start_key), std::move(end_key)); diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_sample_key_pairs_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_sample_key_pairs_dataset_op.cc index 736775bdac..01608dc6bc 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_sample_key_pairs_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_sample_key_pairs_dataset_op.cc @@ -38,6 +38,7 @@ class BigtableSampleKeyPairsDatasetOp : public DatasetOpKernel { BigtableTableResource* resource; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 0), &resource)); + core::ScopedUnref scoped_unref(resource); OP_REQUIRES(ctx, prefix.empty() || start_key.empty(), errors::InvalidArgument( diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_sample_keys_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_sample_keys_dataset_op.cc index 208b7b3e08..9b60e0a667 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_sample_keys_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_sample_keys_dataset_op.cc @@ -28,6 +28,7 @@ class BigtableSampleKeysDatasetOp : public DatasetOpKernel { BigtableTableResource* resource; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 0), &resource)); + core::ScopedUnref scoped_unref(resource); *output = new Dataset(ctx, resource); } diff --git a/tensorflow/contrib/bigtable/kernels/bigtable_scan_dataset_op.cc b/tensorflow/contrib/bigtable/kernels/bigtable_scan_dataset_op.cc index 9407855fe8..688289a4e2 100644 --- a/tensorflow/contrib/bigtable/kernels/bigtable_scan_dataset_op.cc +++ b/tensorflow/contrib/bigtable/kernels/bigtable_scan_dataset_op.cc @@ -67,6 +67,7 @@ class BigtableScanDatasetOp : public DatasetOpKernel { BigtableTableResource* resource; OP_REQUIRES_OK(ctx, LookupResource(ctx, HandleFromInput(ctx, 0), &resource)); + core::ScopedUnref scoped_unref(resource); const uint64 num_outputs = columns.size() + 1; std::vector<PartialTensorShape> output_shapes; |