image disappears which uploaded with managed_file type
Drupal prunes files that haven't been explicitly marked as permanent. This happens on a cron job, which explains the delay you're seeing.

To avoid this, you need to add a submit handler to your form which updates the status of the file. e.g.

MYMODULE_some_form_submit($form, &amp;$form_state) {
  $file = file_load($form_state['values']['xyz_cust_image']);
  $file-&gt;status = FILE_STATUS_PERMANENT;
  file_save($file);
}