Skip to content

Documentation should indicate against relying on case-insensitivity when collating DB results #417

Description

@d-w-moore

Related: irods/python-irodsclient#600
Add to GenQuery 1 & 2 and/or specific query related docs( as well as in any more general DB / query related sections that might exist ) a general caution against depending on lexicographical order in result sets from any query in iRODS.

This is because:

In default installations of MySQL, select 1 where 'a' = 'A' yields a row containing 1 (ie, the condition is true). However, PostgreSQL considers 'A' > 'a' as being true, whereas SQLite3 evaluates 'a' > 'A' as true.

This will affect, at the very least, any of the following:

  • sorting in ORDER BY
  • result sets depending on > , = and < and similar operators when comparing strings
  • result sets depending on BETWEEN string comparisons.

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions