Package org.apache.derby.impl.sql.execute

Examples of org.apache.derby.impl.sql.execute.DependentResultSet


    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here


    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
          null,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

    }

    else if (rs instanceof DependentResultSet)
    {
      boolean instantaneousLocks = false;
      DependentResultSet dsrs = (DependentResultSet) rs;
      String startPosition = null;
      String stopPosition = null;
      String isolationLevel =  null;
      String lockString = null;
      String lockRequestString = null;

      switch (dsrs.isolationLevel)
      {
        case TransactionController.ISOLATION_SERIALIZABLE:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_SERIALIZABLE);
          break;

        case TransactionController.ISOLATION_REPEATABLE_READ:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_REPEATABLE_READ);
          break;

        case TransactionController.ISOLATION_READ_COMMITTED_NOHOLDLOCK:
          instantaneousLocks = true;
          //fall through
        case TransactionController.ISOLATION_READ_COMMITTED:
          isolationLevel = MessageService.getTextMessage(
                        SQLState.LANG_READ_COMMITTED);
          break;

        case TransactionController.ISOLATION_READ_UNCOMMITTED:
          isolationLevel =
                        MessageService.getTextMessage(
                            SQLState.LANG_READ_UNCOMMITTED);
          break;
      }

      if (dsrs.forUpdate)
      {
        lockString = MessageService.getTextMessage(
                        SQLState.LANG_EXCLUSIVE);
      }
      else
      {
        if (instantaneousLocks)
        {
          lockString = MessageService.getTextMessage(
                      SQLState.LANG_INSTANTANEOUS_SHARE);
        }
        else
        {
          lockString = MessageService.getTextMessage(
                            SQLState.LANG_SHARE);
        }
      }

      switch (dsrs.lockMode)
      {
        case TransactionController.MODE_TABLE:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_TABLE);
          break;

        case TransactionController.MODE_RECORD:
          // RESOLVE: Not sure this will really work, as we
          // are tacking together English words to make a phrase.
          // Will this work in other languages?
          lockRequestString = lockString + " " +
                    MessageService.getTextMessage(
                      SQLState.LANG_ROW);
          break;
      }

      /* Start and stop position strings will be non-null
       * if the dSRS has been closed.  Otherwise, we go off
       * and build the strings now.
       */
      startPosition = dsrs.startPositionString;
      if (startPosition == null)
      {
        startPosition = dsrs.printStartPosition();
      }
      stopPosition = dsrs.stopPositionString;
      if (stopPosition == null)
      {
        stopPosition = dsrs.printStopPosition();
      }
   
      return new
                RealTableScanStatistics(
                    dsrs.numOpens,
                    dsrs.rowsSeen,
                    dsrs.rowsFiltered,
                    dsrs.constructorTime,
                    dsrs.openTime,
                    dsrs.nextTime,
                    dsrs.closeTime,
                    dsrs.resultSetNumber,
                    dsrs.tableName,
                    dsrs.indexName,
                    dsrs.isConstraint,
                    dsrs.printQualifiers(),
                    dsrs.getScanProperties(),
                    startPosition,
                    stopPosition,
                    isolationLevel,
                    lockRequestString,
                    dsrs.rowsPerRead,
View Full Code Here

TOP

Related Classes of org.apache.derby.impl.sql.execute.DependentResultSet

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.