support h2
iterator base impliment