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

Logical error in code for determining mode for opening of log files

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 10.2.1.6
    • 10.2.1.6, 10.2.2.0, 10.3.1.4
    • Store
    • None
    • JVM 1.4.2 and later
    • Low

    Description

      There is a logical error in the following function in DirFile4.java
      for determining which mode to use when opening a new log file:

      public StorageRandomAccessFile getRandomAccessFile( String mode) throws FileNotFoundException

      { // Assume that modes "rws" and "rwd" are not supported. if(!rwsOK && "rws".equals( mode) || "rwd".equals( mode)) mode = "rw"; return new DirRandomAccessFile4( (File) this, mode); }

      // end of getRandomAccessFile

      The expression in the if test is missing parentheses around the OR
      expression making it return the wrong value for one case. If "rwd"
      mode is requested for the file (and this is supported by the JVM), the
      file is opened with "rw" instead of "rwd".

      NOTE: this bug does not effect any current Derby versions since as far
      as I know "rwd" is never used for log files. I came across it when
      experimenting with using "rwd" for the log.

      Attachments

        1. rwsync.diff
          1 kB
          Olav Sandstaa

        Activity

          People

            olav Olav Sandstaa
            olav Olav Sandstaa
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: