⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 realresultsetstatisticsfactory.java

📁 derby database source code.good for you.
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
											dsars.numOpens,											dsars.rowsSeen,											dsars.rowsFiltered,											dsars.constructorTime,											dsars.openTime,											dsars.nextTime,											dsars.closeTime,											dsars.resultSetNumber,											dsars.rowsInput,											dsars.optimizerEstimatedRowCount,											dsars.optimizerEstimatedCost,											getResultSetStatistics(dsars.source)										);		}		else if (rs instanceof ScalarAggregateResultSet)		{			ScalarAggregateResultSet sars = (ScalarAggregateResultSet) rs;			return new RealScalarAggregateStatistics(											sars.numOpens,											sars.rowsSeen,											sars.rowsFiltered,											sars.constructorTime,											sars.openTime,											sars.nextTime,											sars.closeTime,											sars.resultSetNumber,											sars.singleInputRow,											sars.rowsInput,											sars.optimizerEstimatedRowCount,											sars.optimizerEstimatedCost,											getResultSetStatistics(sars.source)										);		}		else if (rs instanceof GroupedAggregateResultSet)		{			GroupedAggregateResultSet gars = (GroupedAggregateResultSet) rs;			return new RealGroupedAggregateStatistics(											gars.numOpens,											gars.rowsSeen,											gars.rowsFiltered,											gars.constructorTime,											gars.openTime,											gars.nextTime,											gars.closeTime,											gars.resultSetNumber,											gars.rowsInput,											gars.hasDistinctAggregate,											gars.isInSortedOrder,											gars.sortProperties,											gars.optimizerEstimatedRowCount,											gars.optimizerEstimatedCost,											getResultSetStatistics(gars.source)										);		}		else if (rs instanceof TableScanResultSet)		{			boolean instantaneousLocks = false;			TableScanResultSet tsrs = (TableScanResultSet) rs;			String startPosition = null;			String stopPosition = null;			String isolationLevel =  null;			String lockString = null;			String lockRequestString = null;			switch (tsrs.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 (tsrs.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 (tsrs.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;			}			if (tsrs.indexName != null)			{				/* Start and stop position strings will be non-null			 	* if the TSRS has been closed.  Otherwise, we go off			 	* and build the strings now.			 	*/				startPosition = tsrs.startPositionString;				if (startPosition == null)				{					startPosition = tsrs.printStartPosition();				}				stopPosition = tsrs.stopPositionString;				if (stopPosition == null)				{					stopPosition = tsrs.printStopPosition();				}			}			return new                 RealTableScanStatistics(                    tsrs.numOpens,                    tsrs.rowsSeen,                    tsrs.rowsFiltered,                    tsrs.constructorTime,                    tsrs.openTime,                    tsrs.nextTime,                    tsrs.closeTime,                    tsrs.resultSetNumber,                    tsrs.tableName,                    tsrs.indexName,                    tsrs.isConstraint,                    tsrs.printQualifiers(tsrs.qualifiers),                    tsrs.getScanProperties(),                    startPosition,                    stopPosition,                    isolationLevel,                    lockRequestString,                    tsrs.rowsPerRead,                    tsrs.coarserLock,                    tsrs.optimizerEstimatedRowCount,                    tsrs.optimizerEstimatedCost);		}		else if (rs instanceof LastIndexKeyResultSet )		{			LastIndexKeyResultSet lrs = (LastIndexKeyResultSet) rs;			String isolationLevel =  null;			String lockRequestString = null;			switch (lrs.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:				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;			}			switch (lrs.lockMode)			{				case TransactionController.MODE_TABLE:					lockRequestString = MessageService.getTextMessage(													SQLState.LANG_SHARE_TABLE);					break;				case TransactionController.MODE_RECORD:					lockRequestString = MessageService.getTextMessage(													SQLState.LANG_SHARE_ROW);					break;			}			return new RealLastIndexKeyScanStatistics(											lrs.numOpens,											lrs.constructorTime,											lrs.openTime,											lrs.nextTime,											lrs.closeTime,											lrs.resultSetNumber,											lrs.tableName,											lrs.indexName,											isolationLevel,											lockRequestString,											lrs.optimizerEstimatedRowCount,											lrs.optimizerEstimatedCost);		}		else if (rs instanceof HashLeftOuterJoinResultSet)		{			HashLeftOuterJoinResultSet hlojrs =				(HashLeftOuterJoinResultSet) rs;			return new RealHashLeftOuterJoinStatistics(											hlojrs.numOpens,											hlojrs.rowsSeen,											hlojrs.rowsFiltered,											hlojrs.constructorTime,											hlojrs.openTime,											hlojrs.nextTime,											hlojrs.closeTime,											hlojrs.resultSetNumber,											hlojrs.rowsSeenLeft,											hlojrs.rowsSeenRight,											hlojrs.rowsReturned,											hlojrs.restrictionTime,											hlojrs.optimizerEstimatedRowCount,											hlojrs.optimizerEstimatedCost,											getResultSetStatistics(												hlojrs.leftResultSet),											getResultSetStatistics(												hlojrs.rightResultSet),											hlojrs.emptyRightRowsReturned);		}		else if (rs instanceof NestedLoopLeftOuterJoinResultSet)		{			NestedLoopLeftOuterJoinResultSet nllojrs =				(NestedLoopLeftOuterJoinResultSet) rs;			return new RealNestedLoopLeftOuterJoinStatistics(											nllojrs.numOpens,											nllojrs.rowsSeen,											nllojrs.rowsFiltered,											nllojrs.constructorTime,											nllojrs.openTime,											nllojrs.nextTime,											nllojrs.closeTime,											nllojrs.resultSetNumber,											nllojrs.rowsSeenLeft,											nllojrs.rowsSeenRight,											nllojrs.rowsReturned,											nllojrs.restrictionTime,											nllojrs.optimizerEstimatedRowCount,											nllojrs.optimizerEstimatedCost,											getResultSetStatistics(												nllojrs.leftResultSet),											getResultSetStatistics(												nllojrs.rightResultSet),											nllojrs.emptyRightRowsReturned);		}		else if (rs instanceof HashJoinResultSet)		{			HashJoinResultSet hjrs = (HashJoinResultSet) rs;			return new RealHashJoinStatistics(											hjrs.numOpens,											hjrs.rowsSeen,											hjrs.rowsFiltered,											hjrs.constructorTime,											hjrs.openTime,											hjrs.nextTime,											hjrs.closeTime,											hjrs.resultSetNumber,											hjrs.rowsSeenLeft,											hjrs.rowsSeenRight,											hjrs.rowsReturned,											hjrs.restrictionTime,											hjrs.oneRowRightSide,											hjrs.optimizerEstimatedRowCount,											hjrs.optimizerEstimatedCost,											getResultSetStatistics(												hjrs.leftResultSet),											getResultSetStatistics(												hjrs.rightResultSet)											);		}		else if (rs instanceof NestedLoopJoinResultSet)		{			NestedLoopJoinResultSet nljrs = (NestedLoopJoinResultSet) rs;			return new RealNestedLoopJoinStatistics(											nljrs.numOpens,											nljrs.rowsSeen,											nljrs.rowsFiltered,											nljrs.constructorTime,											nljrs.openTime,											nljrs.nextTime,											nljrs.closeTime,											nljrs.resultSetNumber,											nljrs.rowsSeenLeft,											nljrs.rowsSeenRight,											nljrs.rowsReturned,											nljrs.restrictionTime,											nljrs.oneRowRightSide,											nljrs.optimizerEstimatedRowCount,											nljrs.optimizerEstimatedCost,											getResultSetStatistics(												nljrs.leftResultSet),											getResultSetStatistics(												nljrs.rightResultSet)											);		}		else if (rs instanceof IndexRowToBaseRowResultSet)		{			IndexRowToBaseRowResultSet irtbrrs =											(IndexRowToBaseRowResultSet) rs;			return new RealIndexRowToBaseRowStatistics(											irtbrrs.numOpens,											irtbrrs.rowsSeen,											irtbrrs.rowsFiltered,											irtbrrs.constructorTime,											irtbrrs.openTime,											irtbrrs.nextTime,											irtbrrs.closeTime,											irtbrrs.resultSetNumber,											irtbrrs.indexName,											irtbrrs.accessedHeapCols,											irtbrrs.optimizerEstimatedRowCount,											irtbrrs.optimizerEstimatedCost,											getResultSetStatistics(																irtbrrs.source)											);		}		else if (rs instanceof RowResultSet)		{			RowResultSet rrs = (RowResultSet) rs;			return new RealRowResultSetStatistics(											rrs.numOpens,											rrs.rowsSeen,											rrs.rowsFiltered,											rrs.constructorTime,											rrs.openTime,											rrs.nextTime,											rrs.closeTime,											rrs.resultSetNumber,											rrs.rowsReturned,											rrs.optimizerEstimatedRowCount,											rrs.optimizerEstimatedCost);		}		else if (rs instanceof UnionResultSet)		{			UnionResultSet urs = (UnionResultSet) rs;			return new RealUnionResultSetStatistics(											urs.numOpens,											urs.rowsSeen,											urs.rowsFiltered,											urs.constructorTime,											urs.openTime,											urs.nextTime,											urs.closeTime,											urs.resultSetNumber,											urs.rowsSeenLeft,											urs.rowsSeenRight,											urs.rowsReturned,											urs.optimizerEstimatedRowCount,											urs.optimizerEstimatedCost,											getResultSetStatistics(urs.source1),											getResultSetStatistics(urs.source2)											);		}		else if (rs instanceof AnyResultSet)		{			AnyResultSet ars = (AnyResultSet) rs;			return new RealAnyResultSetStatistics(											ars.numOpens,											ars.rowsSeen,											ars.rowsFiltered,											ars.constructorTime,											ars.openTime,											ars.nextTime,											ars.closeTime,											ars.resultSetNumber,											ars.subqueryNumber,											ars.pointOfAttachment,											ars.optimizerEstimatedRowCount,											ars.optimizerEstimatedCost,											getResultSetStatistics(ars.source)											);		}		else if (rs instanceof OnceResultSet)		{			OnceResultSet ors = (OnceResultSet) rs;			return new RealOnceResultSetStatistics(											ors.numOpens,											ors.rowsSeen,											ors.rowsFiltered,											ors.constructorTime,											ors.openTime,											ors.nextTime,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -