title: How to use feedable iterator from Tensorflow Dataset API along with MonitoredTrainingSession?
body: <p><a href="https://www.tensorflow.org/programmers_guide/datasets#creating_an_iterator" rel="nofollow noreferrer">Tensorflow programmer's guide</a> recommends using feedable iterator to switch between training and validation dataset without reinitializing the iterator. It mainly requires to feed the handle to choose between them.</p>
  
  <p>How to use it along with <code>tf.train.MonitoredTrainingSession</code>?</p>
  
  <p>The following method fails with "RuntimeError: Graph is finalized and cannot be modified." error.</p>
  
  <pre><code>with tf.train.MonitoredTrainingSession() as sess:
      training_handle = sess.run(training_iterator.string_handle())
      validation_handle = sess.run(validation_iterator.string_handle())
  </code></pre>
  
  <p>How to achieve both the convenience of MonitoredTrainingSession and iterating training and validation datasets simultaneously?</p>