GAE DatastoreでIntegerFieldに対して不等号で絞り込む際にfloatを使っては行けない

いま「指定された価格の90%〜110%」を取りたくて

    frm = price * 0.9
    to = price * 1.1

    for x in (Item().all().filter("crawled", True)
              .filter("price >=", frm)
              .filter("price <=", to)):

って書いたら何もマッチしなくて悩んだ。

    frm = int(price * 0.9)
    to = int(price * 1.1)

にしたら動いた。