From f9a6477826c567a799cbc54111b7cbe5c49c38a0 Mon Sep 17 00:00:00 2001 From: Benoit Steiner Date: Mon, 19 Jun 2017 16:39:29 -0700 Subject: [PATCH] Dont fold constant string. PiperOrigin-RevId: 159497483 --- tensorflow/core/grappler/optimizers/constant_folding.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tensorflow/core/grappler/optimizers/constant_folding.cc b/tensorflow/core/grappler/optimizers/constant_folding.cc index 4fccd4e19b0346..325ce8f5fe1f11 100644 --- a/tensorflow/core/grappler/optimizers/constant_folding.cc +++ b/tensorflow/core/grappler/optimizers/constant_folding.cc @@ -293,10 +293,16 @@ bool ConstantFolding::IsFoldable(const NodeDef& node) const { if (IsControlInput(input)) { continue; } - bool is_const = IsConstant(*node_map_->GetNode(input)); + const NodeDef* input_node = node_map_->GetNode(input); + bool is_const = IsConstant(*input_node); if (!is_const && !is_merge) { return false; } + // Don't fold strings constants for now since this causes problems with + // checkpointing. + if (is_const && input_node->attr().at("dtype").type() == DT_STRING) { + return false; + } has_constant_input |= is_const; } if (is_merge) {