GTKO
Oracle
database development tool
Features :
- schema browser
- SQL syntax highlighting
- sqlplus-style command parsing
- configurable external editor (F2 key)
- configurable external query results viewer (F3
key)
- explain plan facility (DBMS_XPLAN display
included)
- configurable statement tracing, any metric in
V$SESSTAT can be measured
- segment space analyzer utlizing
the DBMS_SPACE
package
- database
object DDL generator via the DBMS_METADATA
package
- DBMS_SCHEDULER
interface
- Advanced
Queue interface
SQL statements can loaded for analysis from :
- runtime
cursor cache (V$SQL)
- statspack
snapshots
- Oracle10g
AWR snapshots
- active
sessions
- local
files
23 July 2007
v2.14 is out
A
bunch of annoyances were addressed in this release, especially database
instance connect time. The 'find' populator was bogging it down
in a big way. Even for an empty schema there are usually over
1000 items to load with all the ALL_, USER_, and DBA_ catalog tables in
10g, just to fill in a GtkEntryCompletion widget. Although I hate
to use the non-blocking OCI interface on the background service context
(read: polling), hopefully it's the right concession. Note that
changing the current schema with the Schema: combobox will also repopulate the finder.
OCI
learning experiences this time around: when it comes to the
non-blocking mode setting for a server handle in OCI, it doesn't matter
what value you pass, it's an alternating toggle. Hey OCI: thanks for the (static) memories. Couldn't you at least buy me dinner first?
This
release also includes client-side statement caching for the queries
executed underneath the covers for the user interface. You all are
going to minimize your latching in this way. Both of you.
Mini-saga on the OCI forum here for the truly under-employed.
More:
-
list of snapshot subscribers for materialized view log nodes in the
browser. Incidentally, I hate the IO on these things.
- option to save query results as an HTML table
- new icon for locally partitioned bitmap indexes: There can actually be no other type of bitmap index on a partitioned table. Why this is so is a decent interview question.
03 May 2007
GTKO 2 on the way
02 April 2007
v1.84 is out
* Query-based bind comboboxes in SQL editor
When the toolbar bind
button is clicked, a combobox will be created for bind variables in the
query textview that are anchored with '&', the values of which are
populated by a 'define' line for the name of the bind variable.
Example:
When the toolbar bind button is clicked, a combobox is created at the '&tsname'
location and it is populated with tablespace names. The chosen
tablespace name will then be bound to the query when executed.
* More table types in the browser table treeview
Icons for mviews and mview logs and enhanced info on click/double click.
* Removed schema browser Table/Segments tab; unnecessary now that the
segment size is obtained by double-clicking on a segment in the table list.
* Added sample SQL directory and some queries to the distribution; src_dir/sql
10 January 2007
v1.80 is out
*
Expandable tables in the schema browser
Double-clicking on a table will expand the table's :
- indexes (shown red
when unusable)
- index partitions and subpartitions
- table partitions
- table partitions and subpartitions
- LOB segments
Selecting an index will show its columns and, for function-based
indexes, the FBI expression in the column list to the right.
Double-clicking on and index will show expand any index partitions.
Selecting a table partition will show the partition column-level
statistics in the column list to the right. Double-clicking on the partition will expand any subpartitions.
* Enhanced
command parsing
The SQL command parser will now almost completely tolerate sqlplus
keywords and commands such as SET and PROMPT. Although nothing is done
with the commands (yet) this allows just about any file that runs in
sqlplus to be run in GTKO. Writing this sucked - if anyone wants to crib,
there's a function to get statements in statement.c. It's
called 'get_statements()'.
* Integer
columns
Fixed a problem associated with using integer column types in
GtkTreeView - NULL values show
up as zero. So instead of using GTK's G_TYPE_INT column types
in the interface,
every column type is character, which can show NULL, and an
integer
based sort
function is applied to have numbers sort correctly (which is the reason
int's were used in the first place).
* Server
timestamp
The time on the server is displayed in the lower right corner.
Only one server round trip is performed at connect.
* New
preferences dialog
03
Oct 2006
v1.72 is out
* Execute SQL
block
Ctrl-B now executes the SQL 'block' that the cursor is in.
A
block is any section of text surrounded by blank lines. In
summary, Ctrl-E executes the entire SQL editor buffer, Ctrl-L executes
the line that the cursor is on, and Ctrl-B executes the block.
* Inline bind variable
enhancements
The SQL editor inline bind variable entry widgets are now applied based
on
statement offset in text view (as opposed to the character offset zero in the textview).
Binds are by name and not position in OCI.
* TCP Keepalives
Added keepalive dialog under the Run menu. Allows
for
pinging a host at a regular interval, useful to keep a VPN connection
alive.
* Explain plan
crash
Fixed missing final va_list NULL in a g_strconcat in
explain plan, which was causing a crash.
01
Oct 2006
v1.70 is out
* External
editor and result viewer
Support for external query editor and external result viewers has
been added. In Edit->Preferences an external app can be
set to
use
for the SQL editor and for viewing results (as .csv).
With linux kernel 2.6.13 or greater, inotify
(file modification
tracking) can be used to sync external editor changes to the GTKO
textbuffer as they occur. Without inotify, changes made in the external
editor are only synchronized back to the GTKO editor when the external
editor exits.
To configure inotify you need:
- linux, kernel 2.16.3 or greater
- support for inotify enabled in the kernel (in the Filesystems
section)
- run GTKO configure script with the --with-inotify
switch
* More query
result output options
Query result output options have been enhanced. Now you can send
output to the screen, log to a file, or neither (if you just want to
test the raw select time).
Previously the only way to get results to a file was to send them to
the results treeview and then save, which was highly impractical
(sometimes impossible) for large result sets.
* Enhanched
tracing
Separate query trace facility with optional logging to a trace file.
Tracing is now in a separate tab next to the query output view and has
options for:
- picking stats to measure from the V$SESSTAT Oracle table
- logging stats to a trace file, optionally with the query and the
execution plan
* Broken
connection handling
automatically set interface to disconnected state for Oracle errors
that indicate broken connection; ora-3113 for exammple
01
Oct 2006
v1.60 is out
The big addition in this release is
compile-time support for the
GtkSourceView widget as the SQL editor. Configure looks for
GtkSourceView >= 1.6 and uses it instead of GtkTextView if it's
found. GtkSourceView requires GTK >= 2.8, libgnomeprintui, and
libxml2, but a full Gnome install is still not required. The option is
in
configure for now because I don't want to force an upgrade to 2.8. But
I will say it's a super-cool widget well worth trying out. It's got
built in undo and redo and the plan for the next GTKO release is
printing support. Do plan on using quite a bit more resident memory
though.
*
GtkStatusIcon
GtkStatusIcon (GTK >= 2.10) is implemented in this release.
You'll
get a grayed out database icon in your window manager system tray on
GTKO startup which turns red during executes with the first 256 chars
of the executing query as the tooltip. When executing a long running
job this will keep you from having to constantly switch virtual
desktops to see if it's completed.
* Parse error
offset enhanced
Parse error highlighting in the SQL editor has been dialed in a bit in
terms of word starts and ends and the textview is auto-scrolled to the
error line.
* F9 execute
F9 executes in the expected fashion - selected text or, if there is no
selection, all the SQL statements in the editor textview.
|
Build |
Required libraries:
- GTK+ >= 2.6 (development version)
- Oracle 9 or 10 client
Optional
libraries:
- GtkSourceView >= 1.6
configure
options:
--with-debug
Compile with debug output
--with-inotify
Compile with linux inotify file tracking support
--with-gtksourceview
Use GtkSourceView for the SQL editor widget
--with-win32
Compile for win32 platform
|
|
|