const string restore_op_name = strings::StrCat(name_prefix, "/RestoreV2");
const string assign_op_name = strings::StrCat(name_prefix, "/Assign");
for (Node* var : variables) {
- string new_restore_op_name = graph->NewName(restore_op_name);
- string new_assign_op_name = graph->NewName(assign_op_name);
+ // Add an extra prefix after calling graph->NewName because the "unique"
+ // name may conflict with names generated for Send nodes.
+ // TODO(b/77547936): fix this more generally and get rid of the extra prefix
+ // here.
+ string new_restore_op_name =
+ strings::StrCat(graph->NewName(restore_op_name), "_qt");
+ string new_assign_op_name =
+ strings::StrCat(graph->NewName(assign_op_name), "_qt");
string tensor_names_op_name =
strings::StrCat(new_restore_op_name, "/tensor_names");
string shape_and_slices_op_name =