literal binds mode doesn't work for firebird limit/offset

Issue #3381 resolved
Mike Bayer repo owner created an issue

we need to add **kw to limit_clause(), but also get_select_precolumns() so that these can be propagated through.

#!

________________________________________________________________ LimitOffsetTest_firebird_kinterbasdb.test_limit_offset_nobinds ________________________________________________________________
Traceback (most recent call last):
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/testing/suite/test_select.py", line 155, in test_limit_offset_nobinds
    compile_kwargs={"literal_binds": True})
  File "<string>", line 1, in <lambda>
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/elements.py", line 494, in compile
    return self._compiler(dialect, bind=bind, **kw)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/elements.py", line 500, in _compiler
    return dialect.statement_compiler(dialect, self, **kw)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/compiler.py", line 392, in __init__
    Compiled.__init__(self, dialect, statement, **kwargs)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/compiler.py", line 190, in __init__
    self.string = self.process(self.statement, **compile_kwargs)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/compiler.py", line 213, in process
    return obj._compiler_dispatch(self, **kwargs)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/visitors.py", line 81, in _compiler_dispatch
    return meth(self, **kw)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/compiler.py", line 1605, in visit_select
    text, select, inner_columns, froms, byfrom, kwargs)
  File "/Users/classic/dev/sqlalchemy/test/../lib/sqlalchemy/sql/compiler.py", line 1708, in _compose_select_body
    text += self.limit_clause(select, **kwargs)
TypeError: limit_clause() got an unexpected keyword argument 'literal_binds'

Comments (1)

  1. Mike Bayer reporter
    • Fixed support for "literal_binds" mode when using limit/offset with Firebird, so that the values are again rendered inline when this is selected. Related to 🎫3034. fixes #3381

    → <<cset dd4240e43b41>>

  2. Log in to comment