Skip to content

10.x: reject a collation on a string set column unless it compares bytes (port of #483) #496

Closed

Description

@CaffeinatedCoder

Problem

On main, once #483 merges (PR #492), a collation on a StringSet/StringSet<T> column that may not compare bytes is rejected when the model is built, and so is EF.Functions.Collate over a string set. On release/10.x, a case-insensitive collation still makes Contains, the subset operators and == answer differently from memory, and ExecuteUpdate with Remove("a") deletes A.

Change

Cherry-pick PR #492's commits with -x into a PR against release/10.x:

Done when

On release/10.x, the tests pass on the EF Core 10.0.0 floor and on CI's newest-patch leg, and both halves fail with their fix reverted.

Release

### Changed answers in 10.4.0. Fixed only on release/10.x, so close it by hand.

Activity

  1. added this to the 10.4.0 milestone on Oct 26, 2026
  2. added
    bugSomething isn't working
    silentAnswers wrongly without throwing — fixes go in the next major, never deferred
    area/value-setsValue set families and wrapper arities
    package/efcoreAffects CodoMetis.ValueRanges.EFCore.PostgreSQL
    severity/mediumInconsistency or failure in a narrow scenario
    on Oct 26, 2026
  3. added a commit that references this issue on Oct 26, 2026
  4. CaffeinatedCoder commented on Oct 26, 2026

    @CaffeinatedCoder
    OwnerAuthor

    Ported to release/10.x by PR #500, merged as 6cbddaf. Ships in 10.4.0 under Changed answers, with Changed answers in 10.4.0 in the migration guide. Closed by hand, because Closes #496 acts only on main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/value-setsValue set families and wrapper aritiesbugSomething isn't workingpackage/efcoreAffects CodoMetis.ValueRanges.EFCore.PostgreSQLseverity/mediumInconsistency or failure in a narrow scenariosilentAnswers wrongly without throwing — fixes go in the next major, never deferred

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions