added exception handling in df_traverse_node