You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Login fails with "Failed to receive token during login response parsing" when the password contains a non-ASCII character (fixed on main by #38, unreleased) #51
SQL Server driver failure: Protocol Error: Failed to receive token during login response parsing.
whenever the SQL login's password contains a non-ASCII character (here one character outside ASCII, e.g. ö). The cause is a malformed LOGIN7 packet in the bundled mssql-tds preview, which is already fixed upstream and already on main here (#38). The fix just isn't in a release yet. Could you cut one?
Environment
Tabularis 0.29.0, macOS (arm64)
SQL Server plugin v1.0.0-beta.3 (mssql-tiberius-bridge 0.1.0-preview.5, mssql-tds-preview 0.1.0-preview.1)
Microsoft SQL Server 2022 (RTM-CU25) 16.0.4255.1, SQL authentication
Steps to reproduce
Create a SQL login whose password contains a non-ASCII character.
Add a SQL Server connection in Tabularis with that login.
Test the connection. It fails with the error above, for every ssl_mode (disable, preferred, require) and every database (including master).
The same login connects fine with sqlcmd (ODBC Driver 18).
What happens
Driver side: with tracing enabled, the bundled driver logs the error it collapses into that message: ConnectionClosed("Connection closed by server while reading TDS packet header"). That comes right after PRELOGIN succeeds and LOGIN7 is sent.
Server side: the connectivity ring buffer (sys.dm_os_ring_buffers, RING_BUFFER_CONNECTIVITY) records each attempt as error 17832, state 9: "The login packet used to open the connection is structurally invalid; the connection has been closed."
That matches microsoft/mssql-rs#425 ("Fix LOGIN7 Unicode lengths", merged 2026-08-30). Before that fix, LOGIN7 field lengths were written as bytes rather than UTF-16 code units, so any non-ASCII username, password, database or app name produced an invalid packet.
Verified fix
I ran a minimal program (Client::connect + SELECT @@VERSION) against the same server and login:
Bridge version
Result
mssql-tiberius-bridge 0.1.0-preview.5 (as in beta.3)
Failed to receive token during login response parsing
mssql-tiberius-bridge 0.2.0 (mssql-tds 0.2.0)
connects
main already moved to bridge 0.2.0 in #38, so a release from main should fix this for anyone with a non-ASCII password.
Side note
The real cause is only visible with a tracing subscriber, which the plugin doesn't install, so users see the generic message. Forwarding mssql-tds's ERROR-level events to the plugin's log, or adding the underlying error to the returned message, would have made this a one-minute diagnosis.
Confirmed the 0.2.0 protocol upgrade fixes this in the beta.4 candidate. Added a permanent live JSON-RPC regression using both a Unicode login name and a Unicode password, covering disable, preferred and require TLS modes; connection tests and queries succeed in all three.
PR #54 prepares v1.0.0-beta.4 so the fix from #38 reaches release users. All 34 live database tests pass locally; the release is waiting for the remaining build/CI gates.
The fix from #38 is now included in the published v1.0.0-beta.4, which bundles mssql-tiberius-bridge and mssql-tds 0.2.0.
We added a live regression test with both a Unicode login name and a Unicode password. Connection tests and queries succeed with disable, preferred and require TLS modes, including when using the published macOS ARM64 binary.
Please update the SQL Server plugin to v1.0.0-beta.4. If you still encounter the login error after updating, please let us know so we can investigate further.
Activity
debba commentedon Oct 25, 2026
Confirmed the 0.2.0 protocol upgrade fixes this in the beta.4 candidate. Added a permanent live JSON-RPC regression using both a Unicode login name and a Unicode password, covering
disable,preferredandrequireTLS modes; connection tests and queries succeed in all three.PR #54 prepares v1.0.0-beta.4 so the fix from #38 reaches release users. All 34 live database tests pass locally; the release is waiting for the remaining build/CI gates.
debba commentedon Oct 25, 2026
The fix from #38 is now included in the published v1.0.0-beta.4, which bundles
mssql-tiberius-bridgeandmssql-tds0.2.0.We added a live regression test with both a Unicode login name and a Unicode password. Connection tests and queries succeed with
disable,preferredandrequireTLS modes, including when using the published macOS ARM64 binary.Please update the SQL Server plugin to v1.0.0-beta.4. If you still encounter the login error after updating, please let us know so we can investigate further.