Skip to content

Updates Across All Records Failing #125

@jeffnappi

Description

@jeffnappi

In the process of updating our codebase from SQLAlchemy==0.9.2 + crate==0.16.1 to SQLAlchemy==1.1.9 + crate==0.19.2, I immediately encountered this error in our test suite:

  File "site-packages/sqlalchemy/engine/base.py", line 1015, in _execute_clauseelement
    fn(self, elem, multiparams, params)
  File "site-packages/crate/client/sqlalchemy/compiler.py", line 76, in crate_before_execute
    return rewrite_update(clauseelement, multiparams, params)
  File "site-packages/crate/client/sqlalchemy/compiler.py", line 67, in rewrite_update
    clause = clauseelement.values(newmultiparams[0])
IndexError: list index out of range

This test simply exercises the ability to update all documents via the SQLAlchemy ORM:

        session.query(Post).update({
            Post.social_scheduled_at.name: datetime.utcnow()
        })

Such syntax is clearly documented as correct in the SQLAlchemy Docs: http://docs.sqlalchemy.org/en/rel_1_1/orm/query.html#sqlalchemy.orm.query.Query.update

I would be glad to help work through this issue - but might need some help following what compiler#rewrite_update is trying to accomplish.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions