==================================================================
Top100 - The Oracle Shared Pool Profiler
Copyright (c) 1995-2005 by Material Dreams.
All Rights Reserved.
http://www.materialdreams.com/oracle
==================================================================
Version 2.1.1 Build 157 - 08-OCT-2004
-------------------------------------
- Fixed a problem with procedural code when running against a Oracle 7 server.
- Fixed a problem when running against a 10g server.
- Smaller performance improvements when retrieving data from server.
- Smaller fixes in the user interface.
Version 2.1.0 Build 156 - 17-JUN-2004
-------------------------------------
- The size restriction to a maximum of 32 KByte per SQL statement has been completely removed.
- The size restriction to a maximum of 64 KByte per execution plan has been completely removed.
- The restriction to version 8 or later of Oracle has been removed.
- Additional performance improvements in retrieving data from server.
Version 2.0.6 Build 155 - 07-FEB-2004
-------------------------------------
- Fixes a problem when generating th execution plans when running on Oracle 10g caused
by the obsolete "set optimizer_goal" clause.
Version 2.0.5 Build 154 - 07-FEB-2004
-------------------------------------
- Fixes a problem when running on Oracle 64bit platforms using RAW(8) instead of RAW(4)
data types to identify sql addresses in the sql area.
- Improved error handling for procedural database objects.
Version 2.0.4 Build 153 - 29-JAN-2004
-------------------------------------
- Using the XP Scheme when running on Windows XP.
- Fixes a problem in selecting the correct OCI version when using multiple Oracle homes.
Version 2.0.3 Build 152 - 30-SEP-2003
-------------------------------------
- The Oracle Login Dialog has been redesigned. It is now possible to save passwords and
to create a list of most used connections.
- The Login information will now be shared between all of the Material Dreams tools.
- A new (32 byte) registration code has now replaced the old (8 byte) registration code.
Version 2.0.2 Beta Build 151 - 31-AUG-2003
------------------------------------------
- A new option in the preferences dialog now allows to automatically select
all database users at program startup.
- A new script Top100CleanUp.sql has been added to the distribution that can be used to
cleanup any objects that might have been left over by using Top100.
- Fixed a problem that caused the alignment to change when sorting a column.
- Fixed a problem that caused the first statement to show a wrong status and error messages.
- Fixed a problem that caused sometimes to see lines without sql statement text because the
full sql text is no longer available in the dynamic tables.
Version 2.0.1 Beta Build 150 - 30-AUG-2003
------------------------------------------
- Fixed a few smaller problems in the progress message.
- Delayed statement analysis was unavailable and has been fixed.
- If using delayed statement analysis, the table will now be refreshed when individual statements
are analyzed.
- The Cost and FTS (Full table Scans) columns were unavailable and have been fixed.
- Reanalyzing of individual statements was unavailable and has been fixed.
- Analyzed statement errors and status are now shown correctly in table.
Version 2.0.0 Beta Build 148 - 20-AUG-2003
------------------------------------------
- The selection, filtering and statement analysis steps are now entirely processed in server side code.
- The overall performance has been improved.
- The I/O between client and server has been minimized and by doing so the performance when analyzing
remote systems has been dramatically improved.
- The progress messages are more precise and any process can be stopped at any time.
- The support of multiple users using Top100 on the same server instance has been improved.
- An important problem when using Oracle 7 Clients has been fixed.
- More debugging information is now available if Oracle is not properly installed.
- The registration processes has been changed to support online registration code delivery.
- Registration process has been changed. It is longer necessary to run the application with
administrative rights. Now only the registration process itself must be performed with
administrative rights and after the registration has been completed the application can be used
by any user with normal user rights.
- If you want to use Top100 as a user that does not have administrative privileges (e.g.. sys)
please check the readme.txt file for all needed privileges.
Version 1.7.2 Build 144 - 23-JUL-2002
-------------------------------------
- Extensive debugging capabilities have been added.
Version 1.7.1 Build 143 - 27-JUN-2002
-------------------------------------
- A new column (Error Message) now allows to see why the statement was
not explained properly.
- Fixed a problem that caused the interactive explain plan not to show the
execution plan.
- The trial period now automatically extents by 30 days if a new version of
this application has been installed.
Version 1.7.0 Build 142 - 26-APR-2002
-------------------------------------
The server name in the connect dialog can now be up to 128 characters long.
The process of calculating the similarity to a given statement has been moved
into its own thread and now has a progress indicator.
Version 1.7.0 Build 141 - 12-MAR-2002
-------------------------------------
Fixed some more spelling mistakes.
Version 1.7.0 Beta Build 140 - 13-FEB-2002
------------------------------------------
Smaller internal improvements and fixed several spelling mistakes.
Version 1.7.0 Beta Build 139 - 06-FEB-2002
------------------------------------------
This build fixes a problem when running Top100 on some
versions of Windows NT. At startup the application just generated
the error message "The procedure entry point CreateToolhelp32Snapshot
could not be located in the dynamic link library KERNEL32.dll".
Version 1.7.0 Beta Build 138 - 01-FEB-2002
------------------------------------------
This build fixes a few smaller problems including the wrong error
message when using the new option "Find similar statements".
Version 1.7.0 Beta Build 137 - 27-JAN-2002
------------------------------------------
- Completely redesigned the Oracle interface.
The OCI DLL's are now dynamically loaded.
Support for all Oracle Client Versions.
Added support for Oracle 9i.
- Completely redesigned the data retrieval from the shared pool.
Loading of the statemnts is up to 10 times faster then before.
- Multithreaded processing when analyzing statements.
- New improved progress message with time left indicator.
- Connect and Disconnect options now available.
- The connection dialog now allows to connect as sysdba or sysoper.
- Title of main window now shows the current connection.
- Extensive connection information now available in the help menu.
- An option to flush the shared pool has been added.
- New command line options to select OCI version and authorization type.
- The HTML and XML output have been optimized using style sheets.
- The SQL statement details dialog has been redesigned
into a property sheet dialog with four pages.
Two separate pages for the SQL text and execution plan.
A new page with the detailed list of statement parameters.
A new "SQL Test" page offers on-the-fly modifications and analysis
of the sql statement.
- The "Find similar statements" option has been finalized and
it's user interface has been further improved.
- Enhanced Oracle error handling.
- Enhanced debugging features.
Version 1.6.0 Beta Build 136 - 10-MAY-2001
------------------------------------------
Added the export to a CSV file by keeping the
line breaks in the sql statements.
Fixed a problem when export empty columns
to a XML file.
Fixed a problem that prevented to correctly
show the line breaks in the XML and HTML
output files.
Improved speed when export very large
result sets as an XML file.
Version 1.6.0 Beta Build 135 - 23-APR-2001
------------------------------------------
NEW ENHANCED FILTER CRITERIA:
Added a new set of complex filter criteria to
the preferences window in order better filter
the statements that need to be analyzed.
The following filter criteria can now be used:
+ Elapsed minutes since first load
+ Buffer Gets + Disk Reads per execution
+ Buffer Gets per execution
+ Disk Reads per execution
+ Executions
+ Sorts per execution
+ Number of Rows per execution
+ SQL statement text like
+ SQL statement text unlike
All numeric filter criteria can be set to the
following values:
all, less then, more then and equal
All text filter criteria can be set to the
following criteria:
all, case insensitive, case sensitive
FIND STATEMENTS WITHOUT BINDING VARIABLES:
With the new enhanced filter criteria it is
also possible to get an overview of all
statements that are not properly using
binding variables.
To for example find select statements
that might not properly use binding
variables the following filter settings
could be used:
In the Value Filter
SQL statement like = case ins. + %where%
SQL statement not like = case ins. + %:%
All other criteria = all
In the statement Filter
Only enable the select statements
NEW SORTING CAPABILITIES:
It is now possible to sort on multiple columns
by pressing the Control key while selecting
the columns to be sorted by in the header.
By selecting a column twice the sort order
will change.
The current sorting settings will be shown in the
Table layout page of the preferences dialog.
The sorting will be saved and restored from the
registry when saving the preferences or leaving
the application.
The speed of the sorting in very large tables
has been improved.
NEW STATEMENT SIMILARITY ANALYZER:
A new functionality has been added allowing to
find similar statements based on the algorithm
known as the "Levenshtein Distance".
It is now possible to select a statement in the
table and by pressing the right mouse button to
activate the popup menu where the "Find similar
statements" option can be found.
It is now possible to select if the calculation
should be case sensitive or not and how the
statements with a different command type should be
compared. If you compare statement of different
command type the distance will then be set to the
max value of 99999.
The application now calculates the difference
between the currently selected statement and all
other statements and sorts the list descending
by difference putting the current statement
on the top of the list because of a difference
of 0.
IMPROVED DATABASE CONNECTION HANDLING:
Show the currently connected user, the database
connection, the database name and the version
in the task window title.
Allow reconnecting with a new server without
having to terminate the application.
NEW AND CHANGED PREFERENCES:
A new flag in the general preferences forces
the application to show a warning message
when starting up if not all database users
are part of the current selection.
The Layout editor in the preferences now
correctly shows the order of the columns
in the table.
The "Only show the top n statements" option
that gave the name to the application has been
removed because of the introduction of more
general filter criteria and the enhanced
sorting capabilities available in this
revision.
Version 1.5.2 - 18-MAR-2001
---------------------------
- The number of parses (# Parses) is now also available
as a column in the table.
- Fixen an error when exporting results in HTML format.
(Some special characters have not been converted)
Version 1.5.1 - 22-JAN-2001
---------------------------
- When upgrading from an earlier version of Top100,
the columns and their contents might appear out
of sync. This is caused because of an error when
converting the stored table layout preferences.
This problem has been fixed by cheling the version
of the preferences and eventually restoring the
default table layout automatically.
- The error when setting the "Only show the top" option
in the preferences to a value different then 0 and larger
then the total number of statements in the SQL area
has been fixed.
Version 1.5.0 - 21-JAN-2001
---------------------------
- The results of the analysis can now be exported
and saved as a simple HTML file or as a XML
database together with a HTML file that allows
to browse the XML database.
Use the Export entry in the File menu or the
"Save" button in the toolbar to export the
contents of the table.
- A new flag in the preferences allows to manually
disable the analyzing of each sql statement via
explain plan. This will speed up the process but
at the same time certain values will no longer be
available and you will be able to see the execution
for each sql statement.
- The progress bar in the status bar is now more
precise when analyzing a large SQL area and on slow
remote database connections.
- The analyzing of the sql statements has been further
optimized and should perform a little faster.
- The reaction on changes in the preference dialog
has been optimized by only reloading the data from
the database if really needed because of the changes.
- The (anyway very simple) printing functionality has
been removed because of the newly introduced export
options.
- The help file has been made a little better.
- An example on the XML export has been added to the
distribution. (Top100.XML and Top100.HTML)
Version 1.4.1 - 12-JAN-2001
---------------------------
- Because of problems with the "modal" progress window
i'm now using a progress control in the status line.
- The processing can be stopped by using the ESCape key.
- An error has been fixed that occured when several users
were using Top100 on the same instance.
Version 1.4.0 - 06-JAN-2001
---------------------------
FIXED SEVERAL PROBLEMS WHEN ANALYZING STATEMENTS:
- When the application cannot analyze a statement
the statement fill be skipped and processing continues.
- A new column status shows if and how the statement
was analyzed or if any error has occurred
The following information can be found:
"analyzed" ... the statement was process correctly
and all information is available.
"not analyzed" ... the statement was not analyzed
because it is not a select, update, insert or delete
statement.
"expired" ... the complete statement cannot be retrieved.
This condition in not an error condition and ac occur
on a heavy loaded system.
"error" ... an error occurred when analyzing the statement.
The statement was not analyzed but can still be seen.
- The columns "cost" (total cost) and "# FTS" (number
of needed full table scans) can only be used if the
statement was analyzed correctly and will be null else.
SELECTION OF STATEMENT OWNER:
- The selection of the statements by the user who
first parsed the statement has been comletely redesigned.
A new Tab (Users) in the Preferences Dialog allow to
select any compination of users from a predefined list
of oracle users using the checkboxes in the list.
- The limitations in seleting the SYS and SYSTEM user
are no longer needed and have been removed.
IMPROVED THE PROCESSING SPEED:
- All database accesses have been redesigned and optimized
by using array fetches, no longer sorting in the database
and not performing any joins in the database.
Because of the lack for fast index relational access
to the dynamic performance tables in Oracle the complete
tables will be fetched and then processed locally.
- All static information (users, paarmeter, etc.) will
be cached locally and used for all refeshes.
- Additionally the application now shows a progress
message during the process of analyzing the sqlrea
and informs you of the time left to wait. The processing
can also be cancelled at any time.
OTHER IMPROVEMENTS:
- The application now saves and restores the latest
position of the main application frame.
- A new column has been introduced showing the internal
statement address.
- The existance of the plan table will be cheked at
program start.
- Fixed a failed assertion when setting the sort
order to an invisible column in the preference
Dialog.
Version 1.3.1 - 20-DEC-2000
---------------------------
- Internal changes and adapted to new CI.
- Fixed a GPF when no SQL statements can be found.
Version 1.3.0 - 09-DEC-2000
---------------------------
IMPROVED PRE-PROCESSING OF SQL STATEMENTS:
- During the analysis of the SQL area in the Oracle
instance the system now also automatically loads
the complete SQL statement and additionally
analyzes and retrieves the execution plan of each
statement.
- This makes sure that all SQL state in the table
can be shown and analyzed. In older versions the
system might have reported, that the statement is
no longer available in the sga and therefore cannot
be analyzed.
- The preprocessing of the SQL statements slows
down a little the refreshing of the statement list
but being highly optimized the total time of
processing if still acceptable.
- The execution plan now observes the optimizer goal
set for each individual statement.
NEW INFORMATION IN THE TABLE:
- The columns Cost and FTS have been added to the
table and offer a very interesting overview of the
pre-analyzed statements.
- The column cost is retrieved from the execution plan
for each statement and represents the cost of each
statement.
- The column FTS (Full Table Scan) is the number
of full table scans needed for each statement
and is a very good indicator for SQL statements
that might need special attention or missing
indices for the statement.
- Booth fields are only available when processing
SQL statements that can be analyzed. (SELECT, INSERT,
UPDATE and DELETE)
IMPROVEMENTS IN THE TABLE LAYOUT:
- The table layout (visibility, width and order
of the columns) can be changed.
- You can sort the table by any column by clicking
the column header. The current sort settings will be
indicated in the column header with a small arrow.
The sort order changes each time you click on a column.
- A new tab in the properties dialog allows to see
the current table layout and also to hide one
or more columns. Additionally you can restore the
default table layout by pressing the default button.
- All the information of the table layout will be
automatically stored/retrieved when leaving/starting
the application.
- Changing the order of the columns can be done by
dragging the columns to its new position.
- Improved table appearance using auto select row feature
and flat scrollbars.
GENERAL IMPROVEMENTS:
- The applications now checks the availability and
versions of all needed system components before
starting and reports any missing components.
- A small help file named (Top100.hlp) has been added
to explain the usage of Top100.
- The application now supports online help and
opens the Top100.hlp file when help is requested.
- It is now possible to unregister the application
using the Unregister item in the Help menu.
- It is now (also) possible to access the Top100
web page using the Visit Web Page item in the Help
menu.
Version 1.2.0 - 06-JUL-2000
---------------------------
- The description of the SQL statement now uses a more
refined syntax highlighting algorithm and also marks
constants and comments properly.
An sql statement in the table can now be analyzed by
simply double-clicking the line in the table view.
The word-wrap mode has been removed in order to always
show the original format of the SQL statement.
The error handling in the logon dialog has been fixed
and does now no longer abort if a wrong user/password
combination was used.
Version 1.1.0 - 10-JUN-2000
---------------------------
- Two new columns %Disk and %Buff. have been introduced
and allow to see the percentage of Disk Reads or Buffer
Gets one single SQL statement accounts for compared to the
total number of Disk Reads of Buffer Gets.
This two values should offer a better identification of
the suspicious sql statements that may need to be tuned.
- The new option "Restrict to top now allows to restrict
the rows to the current Top n ones without the need
to refresh all rows from the database. By resorting the
rows (click on the column header) you can look at the
Top n rows for each column.
Version 1.0.1 - 03-JUN-2000
---------------------------
- A problem in the online registration process
has been corrected. You must use version 2.2.1
or higher in order to register the application
successfully.
Version 1.0.0 - 24-MAY-2000
---------------------------
- First released version.
|