Skip to content

Fix sqlExecDiscardResult to use noResult decoder#2452

Merged
mpscholten merged 1 commit intomasterfrom
fix-sqlExecDiscardResult
Feb 19, 2026
Merged

Fix sqlExecDiscardResult to use noResult decoder#2452
mpscholten merged 1 commit intomasterfrom
fix-sqlExecDiscardResult

Conversation

@mpscholten
Copy link
Member

Summary

  • sqlExecDiscardResult was delegating to sqlExec which uses sqlExecHasqlCount (Decoders.rowsAffected). This fails for SQL commands that don't return a row count in their command tag (e.g. SET CONSTRAINTS ... DEFERRED), causing UnexpectedResultStatementError "Empty bytes".
  • Now delegates to sqlExecHasql which uses Decoders.noResult instead.

Test plan

  • Compiles cleanly with ghc --make -fno-code
  • Verify sqlExecDiscardResult "SET CONSTRAINTS ... DEFERRED" () no longer throws HasqlSessionError

🤖 Generated with Claude Code

…cted

sqlExecDiscardResult was delegating to sqlExec which uses
sqlExecHasqlCount (Decoders.rowsAffected). This fails for SQL commands
like SET CONSTRAINTS ... DEFERRED that don't return a row count in their
command tag, causing UnexpectedResultStatementError "Empty bytes".

Now delegates to sqlExecHasql which uses Decoders.noResult instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mpscholten mpscholten merged commit 6d63921 into master Feb 19, 2026
1 check passed
@mpscholten mpscholten deleted the fix-sqlExecDiscardResult branch February 19, 2026 08:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments