fix a bug that cause a crash when push_back to an empty dvector
improve dmap test coverage