Closed yang closed 1 year ago
@yang pydynamodb should push down the entire SQL to boto3 for execution. I will check if there is an issue with parsing the SQL while the clauses in "where" get cut. Thanks for your response.
@yang Aha... I caught this little bug. I forgot to support "!=" operator in the SQL syntax parser here.
pydynamodb\sql\common.py
COMPARISON_OPERATORS = one_of("= <> < > >= <=")("comparison_operators").set_name(
"comparison_operators"
)
It just needs simply adding it in:
COMPARISON_OPERATORS = one_of("= <> != < > >= <=")("comparison_operators").set_name(
"comparison_operators"
)
It will be fixed in the next minor version.
Wonderful, thank you!
Would you mind also publishing the new version on pypi? Thanks!
@yang It was there. You are able to upgrade to v0.5.1 using pip.
Thank you for making this library!
If I issue:
to both boto3 directly (pure PartiQL) and to pydynamodb, pydynamodb never returns (the table is large).
I see that the statement it pushes down is
SELECT * FROM "cache"
.I am guessing it is eagerly pre-fetching data and locally evaluating the WHERE.
I would expect the entire SELECT statement to be pushed down as it is to PartiQL, which is able to handle this.