Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-3097

Unnecessary if statement can be removed from BaseActivation.getColumnFromNow

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 10.4.1.3
    • Fix Version/s: 10.5.1.1
    • Component/s: SQL
    • Labels:
      None

      Description

      In BaseActivation.java there is the following code:

      protected final DataValueDescriptor getColumnFromRow(int rsNumber, int colId)
      throws StandardException {

      if( row[rsNumber] == null)

      { /* This actually happens. NoPutResultSetImpl.clearOrderableCache attempts to prefetch invariant values * into a cache. This fails in some deeply nested joins. See Beetle 4736 and 4880. */ return null; }

      return row[rsNumber].getColumn(colId);
      }

      During the investigation of DERBY-3033, I came to the conclusion that this "if" statement is no longer necessary, and in fact is counter-productive, for it makes diagnosing other problems harder by delaying the point at which data structure problems are exposed as errors in the code.

      This JIRA issue requests that this code be evaluated, to determine whether or not it truly is necessary, and, if it is not necessary, suggests that it should be removed, to result in simpler, clearer code.

        Attachments

        1. checkNumOpens.diff
          9 kB
          Bryan Pendleton
        2. updatedJune2008.diff
          7 kB
          Bryan Pendleton

          Issue Links

            Activity

              People

              • Assignee:
                bryanpendleton Bryan Pendleton
                Reporter:
                bryanpendleton Bryan Pendleton
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: