always use hash in join