Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Improve comments about abbreviation abort.
authorRobert Haas <rhaas@postgresql.org>
Tue, 3 Nov 2015 19:11:49 +0000 (14:11 -0500)
committerRobert Haas <rhaas@postgresql.org>
Tue, 3 Nov 2015 19:14:15 +0000 (14:14 -0500)
Peter Geoghegan

src/backend/utils/sort/tuplesort.c

index d532e87450e64fbdf5055b443926771be01cd9fe..6572af875a5ee42d63287bb7773476913b2e05b3 100644 (file)
@@ -1294,8 +1294,10 @@ tuplesort_putindextuplevalues(Tuplesortstate *state, Relation rel,
         *
         * Alter datum1 representation in already-copied tuples, so as to
         * ensure a consistent representation (current tuple was just
-        * handled). Note that we rely on all tuples copied so far actually
-        * being contained within memtuples array.
+        * handled).  It does not matter if some dumped tuples are already
+        * sorted on tape, since serialized tuples lack abbreviated keys
+        * (TSS_BUILDRUNS state prevents control reaching here in any
+        * case).
         */
        for (i = 0; i < state->memtupcount; i++)
        {
@@ -1373,8 +1375,10 @@ tuplesort_putdatum(Tuplesortstate *state, Datum val, bool isNull)
             *
             * Alter datum1 representation in already-copied tuples, so as to
             * ensure a consistent representation (current tuple was just
-            * handled). Note that we rely on all tuples copied so far
-            * actually being contained within memtuples array.
+            * handled).  It does not matter if some dumped tuples are
+            * already sorted on tape, since serialized tuples lack
+            * abbreviated keys (TSS_BUILDRUNS state prevents control
+            * reaching here in any case).
             */
            for (i = 0; i < state->memtupcount; i++)
            {
@@ -3174,8 +3178,10 @@ copytup_heap(Tuplesortstate *state, SortTuple *stup, void *tup)
         *
         * Alter datum1 representation in already-copied tuples, so as to
         * ensure a consistent representation (current tuple was just
-        * handled). Note that we rely on all tuples copied so far actually
-        * being contained within memtuples array.
+        * handled).  It does not matter if some dumped tuples are already
+        * sorted on tape, since serialized tuples lack abbreviated keys
+        * (TSS_BUILDRUNS state prevents control reaching here in any
+        * case).
         */
        for (i = 0; i < state->memtupcount; i++)
        {
@@ -3414,8 +3420,10 @@ copytup_cluster(Tuplesortstate *state, SortTuple *stup, void *tup)
         *
         * Alter datum1 representation in already-copied tuples, so as to
         * ensure a consistent representation (current tuple was just
-        * handled). Note that we rely on all tuples copied so far actually
-        * being contained within memtuples array.
+        * handled).  It does not matter if some dumped tuples are already
+        * sorted on tape, since serialized tuples lack abbreviated keys
+        * (TSS_BUILDRUNS state prevents control reaching here in any
+        * case).
         */
        for (i = 0; i < state->memtupcount; i++)
        {
@@ -3716,8 +3724,10 @@ copytup_index(Tuplesortstate *state, SortTuple *stup, void *tup)
         *
         * Alter datum1 representation in already-copied tuples, so as to
         * ensure a consistent representation (current tuple was just
-        * handled). Note that we rely on all tuples copied so far actually
-        * being contained within memtuples array.
+        * handled).  It does not matter if some dumped tuples are already
+        * sorted on tape, since serialized tuples lack abbreviated keys
+        * (TSS_BUILDRUNS state prevents control reaching here in any
+        * case).
         */
        for (i = 0; i < state->memtupcount; i++)
        {