message: In resource_variable_ops.copy_to_graph_uninitialized, instantiate
  `UninitializedVariable` under var.device's scope.
  It was discovered that when using tf.saved_model.save with MultiWorkerMirroredStrategy, it is possible that a variable does not have device attribute and tf.distribute code errors out. This fixes it and a test that would have failed is added to cover such use case.
diff: @@ -259,6 +259,8 @@ class _SaveableView(object):
  # created component variables.
  new_vars = []
  for v in obj.values:
  + # Ensure the variables are created with device attribute set.
  + with ops.device(v.device):
  new_variable = resource_variable_ops.copy_to_graph_uninitialized(v)
  object_map[v] = new_variable
  new_vars.append(new_variable)
  