add query cache ,fixbugs