|
DBAnalyzer Release Notes
Version 3.3/02
April 6, 2009
Changes 3.3/01
Alarm Archive
A new tool, dba_archive, has been added to archive historical alarms.
The tool removes alarms from the alarm_history file and moves them to
the alarm_history.arc_<timestamp> file. Archiving old alarms keeps the
alarm_history at a manageable size.
Ingres Version Support
DBAnalyzer version 3.3/01 adds support for Ingres versions 9.1.0 and
9.2.0.
Bug Fixes
Bug ID: 81111 Sentinel does not raise SESSION_LOCK_WAIT alarm
The Sentinel does not detect sessions in a lock wait state and does not
raise the SESSION_LOCK_WAIT alarm.
Bug ID: 80216 Losing database server connectivity does not raise an alarm
When the Sentinel loses database server connectivity it should raise and
dispatch the INGRES_CONNECTIVITY alarm. The Sentinel changes its internal
state correctly but does not dispatch the alarm. The alarm does appear in
the alarm logs.
Bug ID: 80217 External alarms do not process when database server connectivity
is lost
When the Sentinel loses database server connectivity all alarm processing is
suspended until connectivity is restored. External alarms are not dependent on
database server connectivity and should be processed as usual.
Bug ID: 80708 dba_build generates duplicate key on insert errors
Running dba_build in installations that have databases with partitioned tables
generates a duplicate key on insert error. dba_build continues execution after
the error.
Changes 3.2/02
INGRES_CONNECTIVITY alarm
If the Sentinel looses connectivity with the Ingres database server
an INGRES_CONNECTIVITY alarm is raised. The alarm is dispatched
using the normal notification methods.
Alarm Processing
Sentinel alarm processing has been altered such that INTERNAL and
EXTERNAL alarms are executed when Ingres connectivity is lost.
These alarms are not dependent on the Ingres database server and
can be executed in the absence of Ingres connectivity.
Changes 3.2/01
Watcher Server
A new Watcher server has been added to detect failed or unresponsive
Sentinels. If a Sentinel server should fail or become hung the
Watcher Server will raise the appropriate alarms.
Multiple client versions
Version 3.2 of the client can co-exist with earlier client versions.
A separate set of desktop icons and Start Menu items are created and
the 3.1 version need not be un-installed.
dba_notify script
The Sentinel notification script $DBA_SYSTEM/bin/dba_notify has been
altered. The e-mail notification Subject now consists of the alarm
severity and alarm name instead of the entire message. The install
procedure saves the old file as dba_notify_3.1 and installs the new.
MINIMUM_DURATION alarm keyword
A new keyword, MINIMUM_DURATION, has been added to the Sentinel
alarm definition. The value specifies the amount of time an alarm
condition must persist before action is taken. This addition will
make it easier to implement certain session state checking alarms.
Sentinel Configurations
Sentinel alarms SESSION_LOCK_WAIT, DMF_CACHE_HIT_RATE_LOW, and
GROUP_READ_RATE_HIGH have been changed with new thresholds and/or
report parameters. The install procedure will edit all Sentinel
configurations with these changes. A copy of the original file
is saved with a _3.1 suffix.
License expiration alarms
The DBAnalyzer Sentinel will now generate alarms LICENSE_EXPIRING
and LICENSE_INVALID. LICENSE_EXPIRING is issued if the DBAnalyzer
license string is set to expire within the next 14 days, and
LICENSE_INVALID is raised if the license string is not valid or
has expired.
BUG FIXES 3.2/00
Bug ID: 249 DMF cache hits attribute is negative
DMF cache counters are maintained by the Ingres server as 4 byte
integers. On busy systems these counters can overflow and turn to
negative values. The logic which materializes the DBAnalyzer RPDB
virtual tables has been modified to detect this condition and turn
the counter values into appropriate positive integers. These
columns are now stored as decimal datatypes. Note that the counter
values in the virtual tables are guaranteed to be positive but they
may not be accurate because there is no way to determine how many
times the actual counter has overflowed.
Bug ID: 255 Sentinel generates "pipe_open_write failed" messages
The alarm passing mechanism between the Sentinel and Dispatcher
made use of the operating system pipe construct. During periods
of heavy alarm activity the pipe buffer became full and the alarm
passing mechanism failed. The alarm passing mechanism has been
re-written to use a larger shared memory segment and thus avoid
this situation.
Bug ID: 321 Alarm Editor blank alarms
The Alarm Editor allowed blank alarm definitions to be added to
the Sentinel configuration file. Blank alarms are now ignored
and not saved.
Bug ID: 417, 445 dba_prune_logs fails
dba_prune_logs is called by the Sentinel to prune old and empty
DBAnalyzer log files. On some platforms the script failed with
various status messages and did not prune the log files. This
has been fixed.
Bug ID: 435 Windows clients fail to start
DBAnalyzer client consoles failed to start when launched from
accounts without administrator privilege. This was caused by the
registry manipulation logic which has be fixed.
Bug ID: 437, 440 DBAnalyzer servers fail to start
When dba_startup is called by the operating system startup logic
DBAnalyzer servers start up and shutdown immediately. This was
caused by the signal handling logic in the DBAnalyzer servers.
The signal handling mechanism has been altered to avoid this
problem.
Bug ID: 441 Blank lines in client environment file
If the client environment file contained blank lines the Monitor
and Sentinel consoles failed with a java NoSuchElementException.
The environment file parsing logic has been modified to ignore
blank lines.
Bug ID: 447 Database name scrambled on Monitor Locks display
On Tru64 the database name shown by the Locks display in the
Monitor Console was scrambled. This is caused by the byte
ordering scheme on Tru64 and has been fixed.
Bug ID: 449 Monitor Query floating point calculation
The Query display of the Monitor Console does not perform floating
point calculations correctly when connected to Tru64 servers.
This is caused by the native byte ordering scheme and has been
fixed.
Bug ID: 452 DBAnalyzer servers do not register properly
On HP-UX systems DBAnalyzer servers do not show up in the
dba_procs output even though the processes are running. The
process registration logic failed to detect a running process
and thus removed it from the DBAnalyzer server registry. This
problem has been fixed.
Bug ID: 453 Monitor Console DMF display incorrect
The DMF Cache display of the Monitor Console showed incorrect
results in the strip charts and counter values. This was caused
by the virtual table change which stores DMF counters as decimal
instead of integer. The console logic has been fixed to detect
the DBAnalyzer server version and interpret the results correctly.
Bug ID: 454 Alarm console does not show all reports
Some alarms may be raised at one severity, such as informational
and then escalate to urgent or critical. Each time the severity
changes any associated report is re-generated. The Alarm Report
display only showed the highest severity report. The display will
now show all generated reports starting with the highest severity.
Bug ID: 455 DMF_CACHE_HIT_RATE_LOW alarm
The DMF_CACHE_HIT_RATE_LOW alarm is triggered during periods of
low system activity due to low cache hit rates. The alarm query
has been modified so it will not trigger unless the fix call
rate is at least 25 per second.
Bug ID: 456 Event alarms do not clear
Event alarms are not cleared from the active alarm log until the
generating Sentinel is shut down. Event alarms will now clear
after 60 seconds by default. The clear time can be configured
using the server side environment variable DBA_EVENT_DURATION, the
duration value is seconds.
Bug ID: 459 Monitor DBMS Sessions display shows only effective user
The DBMS Sessions display shows only the session effective user.
If the session opens the database connection with the -u flag the
real user is not displayed. The Username field has been changed to
show the effective user followed by the real user in parenthesis.
Bug ID: 460 delta_seconds column is inconsistent
If the Sentinel referenced the same virtual table more than once
in the same interval the table was materialized once for each of
those references. The second and subsequent references resulted
in a very short delta_seconds value, usually 1 to 3 seconds. The
virtual table is now materialized only once per interval.
Bug ID: 465 Alarm history is not refreshed after prune operation
When the Sentinel Alarm Console is used to prune historical alarms
the alarm display is not refreshed to reflect the pruned alarms.
The Alarm Console will now wait for the Dispatcher to finish the
prune operation before reloading the historical alarms.
Bug ID: 472 DMF cache read/write counters incorrect
Some versions of Ingres 2.6 changed the meaning of the DMF single/
group read/write counters to be pages instead of I/O requests.
The DBAnalyzer primitive tables cannot correct this problem and
will display the number as reported by IMA. Virtual tables
detect the change and convert the counter to I/O requests to
maintain consistency with previous releases.
NEW FEATURES 3.1/03
TOP RESOURCE SESSIONS DISPLAY
A new display has been added to DBAMonitor which shows the top
resource consuming sessions with respect to CPU time, disk I/O,
and communications I/O. The display can also show detailed
execution statistics for a selected session.
NEW RPDB TABLES
Two new tables have been added to the DBAnalyzer RPDB,
session_stats and session_lastquery_prim. The session_stats
virtual table contains session activity statistics including
the query text for the currently executing query or the most
recent query executed. The query_active attribute identifies
whether the query is currently executing or execution is done.
The session_lastquery_prim is a primitive table which has the
text of the most recent query executed. The most recent query
executed is available only in Ingres 2.6, releases prior to
2.6 only show the query text if the query is still executing.
HEX SESSION IDS
All DBAnalyzer client tools and reports will now display
session ids as hex strings. This is consistent with the
format used by IPM, iimonitor, lockstat, and logstat.
BUG FIXES 3.1/03
Bug ID: 391 Group_RW alarm query fails in DBAMonitor
The query returned a calculated column value as an Ingres decimal type
which DBAMonitor was unable to display. Decimal datatype handling has
been added to DBAMonitor.
Bug ID: 395 SVR_SESSION_EXHAUSTED alarm report on recovery server
The sentinel alarm SVR_SESSION_EXHAUSTED was modified to exclude the ingres
recovery server so that bogus alarms wouldn't be created. Only the ingres
dbms servers are now checked for the session limit being reached. dba_build
does not overlay the existing sentinel definition file during upgrades so
that site customizations are not lost. For existing sites, this change must
be made manually by editing the $DBA_SYSTEM/alamrs/dba_sentinel.sen file.
Bug ID 409: Changes required for 64 bit Tru64 OS
Several bugs were caused in various Sentinel alarm reports due to the 64 bit
Tru64 OS.
Bug ID: 403 Sentinel keyword and column conflicts
If an alarm query returned a column whose name was one of the
Sentinel keywords and that column name was used as a variable
in an alarm message, the Sentinel would either disable the
alarm or fail to format the message correctly. This keyword
conflict is now possible only if the column name is the last
word of the message and it appears as the only item on that
message line.
Bug ID: 410 Consle Server prints startup message twice
The Console Server (dba_cs) prints the startup message twice
ing the log_dba_cs.<timestamp> log file. The startup
message is now printed only once.
Bug ID: 412 Transaction Detail display stops refreshing
The DBAMonitor Transaction Detail display stops the refresh
cycle when the current transaction completes even though the
session is still connected. The display will now continue
to refresh with the transaction statistics being blank until
a new transaction is started by the session.
Bug ID: 414 Alarm histor log contains report command and parameters
In situations where the alarm severity changes the Sentinel alarm
history log contains the associated report command and command line
parameters. The alarm dispatcher has been changed to remove the
command and parameters from the alarm message file.
Bug ID: 416 Installation Editor error handling
The Installation Editor does not display the troubleshooting dialog
when the server connection fails. The troubleshooting dialog is
now displayed.
Bug ID: 420 Console Server holding ima_mib_objects locks
The DBAnalyzer Console Server (dba_cs) process holds exclusive
locks on ima_mib_objects table when the management scope is changed.
This prevents other DBAnalyzer users and servers from changing
scope. The scope switching logic has been changed to release locks
as soon as the switching operation is complete.
BUG FIXES 3.1/02
Bug ID: 316 dba_startup shows running processes twice
When dba_startup is called to bring up the default DBAnalyzer
installation the list of running processes is shown twice.
Bug ID: 383 ING_SET autocommit setting interference
If ING_SET is defined with "set autocommit on" DBAnalyzer tools
will generate error E_US08B4 No MST is currently in progress...
The startup procedure dba_startup has been modified to explicitly
set autocommit to off.
Bug ID: 389 Client console connectivity error messages
If the DBAnalyzer Console Server is not running client consoles
issue a terse "connection refused" message with no additional
detail. The message has been modified to identify the server
node and listener port and display a Troubleshoot button which
offers guidence on resolving the problem.
Bug ID: 390 Client consoles do not remember saved passwords
The client consoles did not remember saved control and access
passwords and continued to prompt for them. The consoles will
now remember saved passwords and will only prompt for the
password if it is changed on the server.
Bug ID: 394 Sentinel Alarm Console fails when using IP addresses
The Sentinel Alarm Console and Alarm Editor displays failed when
the remote node was referenced by an IP address instead of the
node name.
Bug ID: 397 Short integers and double floats are not supported
Short integers and double floats did not display correctly in the
query tools and caused the Sentinel to generate bogus alarms.
BUG FIXES 3.1/01
Bug Id: 247 ING_SET defined "set lockmode" command causes error
If the ING_SET environment variable is used to define "set lockmode"
setting an error condition occurs when a DBAnalyzer server opens a
database. DBAnalyzer servers will now issue a commit statement
before issuing any SQL statements.
Bug Id: 250 SESSION_LOCK_WAIT alarm references incorrect report name
in the Action Message.
The SESSION_LOCK_WAIT alarm referenced a non-existent report in the
Action Message and hence no report was produced.
Bug Id: 253 Monitor screens fail in non US locales.
Monitor displays which use the strip chart display fail in non US
locales as a result of date and time representation differences.
Bug Id: 254 SQL queries with "mod" function fail to parse properly.
Queries making use of the SQL "mod" function fail to parse and
generate a syntax error on ",4096".
NEW FEATURES 3.1/00
AUTHENTICATION
The Console Server can be configured with ACCESS and CONTROL passwords
allowing only authorized clients to monitor and / or control the
target installation.
DEADLOCK_DETECTED ALARM
An event alarm has been added to the default Sentinel which is raised
whenever a deadlock condition takes place.
REMOVE SESSION
The DBMS Sessions display allows specific user sessions to be removed
if the user has the control password. Session removal logic has also
been added to the Sentinel SESSION_LOCK_WAIT alarm so blockers can be
automatically removed if so configured.
EXTERNAL ALARM DETECTORS
The Sentinel has been modified to allow external alarm detectors, this
allows an external script of program to be executed and alarms raised
or cleared based on the return value of the external program. This
functionality allows the Sentinel to monitor non-Ingres activities.
BUG FIXES 3.1/00
Bug Id: 169 Alarm report not visible through Sentinel Console
Certain alarms generate detail reports when they are triggered. These
reports are sent as a part of the alarm notification but are not visible
in the Sentinel Console alarm detail display. The alarm notification
script which creates the report did not use the proper file naming
convention and therefore the report was not visible in the Sentinel
Console.
Bug Id: 170 Help is not available in the Alarm Editor display.
Selecting either of the help menu items does not display the associated
help file.
Bug Id: 173 session_summary report produces a report header but no details
When the session_summary report is executed it produces only the report
header section and no details. This was caused by an improper restriction
in one of the report queries which eliminated all data rows.
Bug Id: 175 Console not started during installation process
While running dba_build the Console Server is not started and a message is
issued that it is running. The dba_stop command did not properly stop
all console server child processes which caused dba_build to not start
the Console Server.
Bug Id: 177 locked_resource and blocking_session reports failed to
produce the correct results with multiple DBMS servers running
If the bocked and blocking sessions were executing in different DBMS
servers the locked_resource dna blocking_session reports failed to
produce the correct results. This was caused by an incorrect IMA domain
setting while running the reports.
Bug Id: 178 Opening the Alarm Console display opens alarm detail as well
If there is only one active alarm then opening the Alarm Console display
will automatically launch the Alarm Detail window even if the alarm
entry was not double-clicked.
Bug Id: 179 LOG_BUFFERS_TOO_SMALL/BIG alarm messages display **unknown**
instead of the current block size
The LOG_BUFFERS_TOO_BIG and LOG_BUFFERS_TOO_SMALL alarm messages display
**unknown** instead of the current log file block size. The block_size
attribute did not appear in the query target list and the value could
not be displayed as part of the message.
Bug Id: 180 Alarm Detail display does not allow Sentinel Console to gain
focus
The Alarm Detail display did not allow the Sentinel Console or the Alarm
Console go gain focus, this also prevented multiple alarm details to be
displayed at the same time.
Bug Id: 181 Incorrect alarm detail displayed
The first double-click of an alarm in the Alarm Console always displays
the first alarm in the list, even if it is the target of the double-click.
Bug Id: 182 Installation editor does not prompt for access password
The Installation Editor does not prompt for the access or control
passwords. An error message is issued and there is no opportunity to
specify the password.
Bug Id: 183 Alarm detail reports are not always displayed correctly
When an alarm is raised the detail report is available, but as soon as
the alarm severity or state change the report can no longer be seen.
Bug Id: 185 LOG_FILE_FILLING and LOG_FILE_USAGE alarms do not generate
detail report
The LOG_FILE_FILLING and LOG_FILE_USAGE alarms did not generate the
log_file_status report.
Bug Id: 196 Alarm e-mail notification does not include action message
The e-mail message generated as a part of the alarm notification procedure
does not include the Action Message.
Bug Id: 205 Locks display generates WFCException
Disposing of the Locks display without stopping auto-refresh generates a
WFCException "TreeView has been disposed and can no longer be used".
Bug Id: 206 Disposing of a window while refresh is active causes window
to hang.
If the monitor window is disposed of by the Exit menu item while refresh
is enabled the window will hang and become unresponsive.
Bug Id: 207 There is no way to select specific servers in DMF Cache Display
The DMF Cache display does not allow selection of specific servers in a
multi-server configuration. A button has been added so a specific server
can be selected and the current target server is displayed on the form.
Bug Id: 208 DMF Cache Statistics StringIndexOutOfBounds error
If the DMF Cache Statistics display disconnects from the server and then
the Start button is clicked a run-time error is generated and no
statistics are displayed.
Bug Id: 209 DBMS Sessions allows kill request for system threads
If a system thread is selected and the kill button clicked no error message
is issued even though the system thread has not been killed.
Bug Id: 210 Help is not displayed by the Query display
The Query display does not display help when either of the help menu items
are selected.
Bug Id: 211 Query display hangs when there is no query to execute
The Query display will hang if the Start button is pressed and there is
not query in the query editor window.
Bug Id: 217 Single alarm Sentinel definitions cannot be changed
The Alarm Editor does not allow a Sentinel configuration with only one
alarm to be edited.
Bug Id: 221 No scope control in the Query display
The Query display does not allow the IMA domain to be manipulated.
Bug Id: 240 qsf_pool.percent_used is not correct
The percent_used attribute of the qsf_pool table showed the free percentage
instead of the used percentage.
NEW FEATURES 3.0/05
INSTALLATION
Unix root access ins no longer required to install DBAnalyzer, the
installation now takes place from the ingres account.
PERL
PERL is no longer required for Sentinel alarm notification, the Alarm
Dispatcher now executes a shell script (dba_notify and dba_mail) to
perform alarm notification.
BUG FIXES 3.0/04
Bug Id: 153 dba_build core dumps if II_SYSTEM is not defined
If II_SYSTEM is not defined dba_build fails with a core dump, dba_build
will now issue an error message and terminate gracefully if II_SYSTEM
is not defined.
Bug Id: 154 dba_build fails on attempt to open Star databases
During the installation process dba_build creates a table in the dbanalyzer
database used to translate reltid,rltidx pairs into actual table names.
Each database in the installation is opened and rows from iirelation are
added to this table. dba_build failed to detect distributed databases
(IngresStar) and generated an error message attempting to open these
distributed databases. dba_build will not open only local databases
when populating the table cache.
Bug Id: 155 Alarm Dispatcher does not create log file on startup
If the Alarm Dispatcher was started by dba_cs_start there was no log
file in the log directory. The Console Server has been modified to
start the Alarm Dispatcher automatically and create the appropriate
log file.
NEW FEATURES 3.0/03
LOCKLISTS DISPLAY
A locking system locklists display has been aded to the Monitor Console.
The locklists displays shows all locklists or just waiting locklists
know to the locking system.
LOCKS DISPLAY
The locks display in the Monitor Console is launched by double clicking
a locklist in the locklists display. Locks shows all locks held by the
current locklist, including the resource locked, lock mode, and lock
state.
LOCK BLOCKERS
The Blockers tab in the locks display shows all blockers for a waiting
lock request. Blockers are displayed in a tree view and includes the
immediate blocker as well as all blockers further up the chain.
ALARM REPORTS
Some Sentinel alarms generate reports when they are triggered. The
reports are stored in ASCII files on the server host. The Sentinel
Alarm Console has been enhanced to display the report associated with
a particular alarm.
BUG FIXES 3.0/01
Bug ID: 136 Monitor toolbar default size incorrect
The Monitor toolbar is not set to the correct size on startup, it should
be the same size as the last time it was resized by the user.
Bug ID: 137 Query does no properly size single character columns
Single character colum widths are too small to display even a single
character. If the column width is increased with the mouse the data is
properly displayed.
Bug ID: 138 QSF pool does not display wait cursor during refresh
The QSF pool display does not change the cursor to WAITCURSOR while it is
in the process of refreshing the display.
Bug ID: 139 Column effective_group in sessions_prim registered as an integer
The column effective_group in the sessions_prim table is registered as in
integer instead of a varchar. This generates Ingres error E_GW81C2 when
the column is referenced.
Bug ID: 140 Most monitor displays with strip charts fail with NullPointerException
Most of the monitor displays that utilize strip charts fail with
java.lang.NullPointerException on startup. The display is ever generated.
Bug ID: 141 DMF cache strip charts do not update
The DMF form strip charts do not update. The displayed counters are
changing correctly but the strip chart shows only the start time and never
updates.
Bug ID: 142 QSF pool repeat query and database procedure grids do not resize
The repeat query and database procedure grids on the QSF pool display do
not resize when the display is resized.
Bug ID: 143 DMF cache form floating point precision
The DMF form Current and Average Hit % floating point values are displayed
with a variable number of digits to the right of the decimal.
Bug ID: 144 Transactions form grids do not resize when form is resized
The busy and large transaction grids do not resize when the form size is
changed.
Bug ID: 145 Set scope grid does not resize properly
The Sec Scope display server grid does not resize properly when the form
size is changed.
Bug ID: 146 If scope is set to non-default server it cannot be changed
Setting management scope so it does not include the default server (the
one we are connected to) disables all future scope changes until the
server connection is re-established.
Bug ID: 147 QSF pool display takes too long to refresh with many pool objects
The QSF pool display takes too long to refresh when there are many
(hundreds) of pool objects.
|