We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see ourdocumentation.
There was an error while loading.Please reload this page.
1 parentb8f00a4 commit9c57d11Copy full SHA for 9c57d11
src/backend/utils/adt/varchar.c
@@ -846,6 +846,18 @@ bpcharcmp(PG_FUNCTION_ARGS)
846
len2;
847
intcmp;
848
849
+/*
850
+ * Trimming trailing spaces off of both strings can cause a string
851
+ * with a character less than a space to compare greater than a
852
+ * space-extended string, e.g. this returns false:
853
+ *SELECT E'ab\n'::CHAR(10) < E'ab '::CHAR(10);
854
+ * even though '\n' is less than the space if CHAR(10) was
855
+ * space-extended. The correct solution would be to trim only
856
+ * the longer string to be the same length of the shorter, if
857
+ * possible, then do the comparison. However, changing this
858
+ * might break existing indexes, breaking binary upgrades.
859
+ * For details, see http://www.postgresql.org/message-id/CAK+WP1xdmyswEehMuetNztM4H199Z1w9KWRHVMKzyyFM+hV=zA@mail.gmail.com
860
+ */
861
len1=bcTruelen(arg1);
862
len2=bcTruelen(arg2);
863