Skip to content

Commit 249a473

Browse files
bengsigOmar Bakhir
andauthored
3.1.3 merge into master (#14)
* bke is now developing for 3.1.3 * Replace dbms_lock.sleep with dbms_session.sleep * Save sql_id rather than a pointer to it * $connecterror:accept directive * Connection storm (plus some doc updates) * Prevent extra logon for reconnect databases * Fix storm graph * Allow user to set everyuntil * Document everyuntil can be set * Connection storm fixes and documentation * cstorm plots both by start/end of logon * Add ora 12510 to dead database errors * Add oltpping * Distinguish thread/xtra storm * Improve plot description * $oraerror:showoci directive * Few missing grants/synonyms * New aw_cols skew calculation * printf k and K specifiers * Fix a few printf k/K format issues * Yet another printf k fix * Final fixes for k/K format * Add end2end timing for mass insert * Fix mtitplot e2e * e2e is logscale * -= operator, clflags bits, nostatistics statement * Elaborate on ?: being right associative * Better adplot check * Use runseconds() as fucntion call in all documentation * Gather sys/usr from gv$osstat * Fix png files for osstat * Updating changelong and 3.1 news * oltpplot --fractiles-dropped option * $ampersand:on in histdata.rwl * Global osstat * Add sys% usr% to global osstat graph * Add drop% * Fix < 1% drops * Use exec in shell scripts * Remove extra -= in rwldilex * $musymbolfromstring directive * Add xc_hardparse to aw_transaction and awindex_query * Add keyring to doc, also gather PGA * Memory plot is using logscale * Add check for time difference * Add checkepoch.rwl * Split long lines * Lob trim before write * Fix full scan message * Improve some comments * Changes to rwlparser.y * Add another local only file * Enable compile in 23, disable 18 * Use loadfactor with mtit * Add --fromminutes option to ashplot * Comment * $ora01013:break directive * Running graphs in ashplot * Add oltpconnect * Better RWL-322 description * Add -uno to git status to speed up rwlwatermark.sh * Add (experimental) hcc table to mtit * Correct synonym * call exec rwloadsimNN via PATH rather than full pathname * Print proccount in mtitxcset * Allow different index partition count for mtit * Variable partition count * Make sure there is no ORA-00001 risk * Modernize sqlmonitor, sqlreport; better tags in oltp * no dropped in stead of 0% dropped * Fixed rwlreadlob * Changed end-to-end colors * Add -2 option to oltpxcrun * Release 3.1.3 --------- Co-authored-by: Omar Bakhir <omar.bakhir@oracle.com>
1 parent d59a072 commit 249a473

File tree

261 files changed

+11385
-6989
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

261 files changed

+11385
-6989
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ lib/*.o
1414
lib/*.obj
1515
lib/*.lib
1616
dist-rwl-bin.sh
17+
dist-rwldev.sh
1718
push_to_remotes.sh
1819
make.generated.sh
1920
*.tgz

BUILDING.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
## Prerequisites
44

55
* An Oracle client environment (release 19.9 or higher) used for building the tool; Instant Client including basiclite, sdk and sqlplus is fine.
6-
* Potentially client environments for other releases than the primary build release, these can similarly use full client or Instant Client; releases 11, 12, 18, 19, 21, 23 are supported.
6+
* Potentially client environments for other releases than the primary build release, these can similarly use full client or Instant Client; releases 11, 12, 19, 21, 23 are supported.
77
* For client release 19, you must have at least 19.9.
8-
* A database (release 19 or higher, release 21.3 preferred) that can be used to run test scripts.
8+
* A database (release 19 or higher, release 21.9 preferred) that can be used to run test scripts.
99
* An environment with the gcc compiler and tools like make.
1010
* Both bison (3.0.4 or newer) and flex must be installed.
1111
* Installing ctags and cscope is recommended if you want to work on the source.
1212
* The Bourne Again Shell, /bin/bash.
13-
* Installing gnuplot is highly recommended, although not required for compiling or running test suite. It is required for running the oltp workload.
13+
* Installing gnuplot is highly recommended, although not required for compiling or running test suite. It is required for running the oltp workload and several standard utilities
1414
* On Solaris, you must have GNU utilities installed and they _must_ be before ordinary utilities in your PATH. Typically, this means your PATH should have /usr/gnu/bin among the first parts.
1515

1616
## Building rwloadsim
@@ -63,6 +63,15 @@ It contains a set of defines that must be provided for the new platform.
6363
At present, the following platforms are in _Beta_ state, which means they are not yet ready for production use.
6464
If you complete a port, please contact the rwloadsim developer.
6565

66+
### Microsoft Windows
67+
68+
For building on Microsoft Windows, you need the following:
69+
70+
* Microsoft Visual Studio 2017 or later
71+
* nmake, cl, link (command line C compiler and linker)
72+
* Oracle Instant client for Windows release 19.21 or newer
73+
* For certain utilities (ashplot, ociping in concurrency mode), an installation of gnuplot is required
74+
6675
### Apple OS X
6776

6877
For building on OS X, please be aware of the following:

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,17 @@
11
# RWP\*Load Simulator Release Notes
22

3+
## 3.1.3
4+
5+
* Bug fixes
6+
* Printf format for KiB, MiB, etc
7+
* Oltp workload can show connection storm effects
8+
* Oltp workload can optionally query gv$osstat to usr/sys on db server
9+
* The ashplot command can output a running graph
10+
* Added -= assignment
11+
* Various improvements to statistics gathering
12+
* Client version 18 no longer supported
13+
* Client version 23 now included
14+
315
## 3.1.2
416

517
* Bug fixes

admin/.vim/syntax/rwl.vim

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
" Copyright (c) 2023 Oracle Corporation
55
" Licensed under the Universal Permissive License v 1.0
66
" as shown at https://oss.oracle.com/licenses/upl/
7-
" Latest Revision: 28 feb 2024
7+
" Latest Revision: 4 jun 2024
88

99
if exists("b:current_syntax")
1010
finish
@@ -94,6 +94,7 @@ syn region rwlSQL start='\<\ccreate[ \t\n]\+\(or[ \t\n]\+replace[ \t\n]\+\)\?pro
9494
syn region rwlSQL start='\<\ccreate[ \t\n]\+\(or[ \t\n]\+replace[ \t\n]\+\)\?package[ \t\n]' end='\(^[ \t]*[/.]$\)'
9595
syn region rwlSQL start='\<\ccreate[ \t\n]\+\(or[ \t\n]\+replace[ \t\n]\+\)\?library[ \t\n]' end='\(^[ \t]*[/.]$\)'
9696

97+
syn match rwlDirective '\$connecterror:accept'
9798
syn match rwlDirective '\$statistics:basic'
9899
syn match rwlDirective '\$statistics:histograms'
99100
syn match rwlDirective '\$statistics:all'
@@ -140,6 +141,10 @@ syn match rwlDirective '\$maxmesg:\d\+'
140141
syn match rwlDirective '\$readbuffer:\d\+'
141142
syn match rwlDirective '\$ora01013:stop'
142143
syn match rwlDirective '\$ora01013:continue'
144+
syn match rwlDirective '\$ora01013:break'
145+
syn match rwlDirective '\$ora01013:reset'
146+
syn match rwlDirective '\$oraerror:showoci'
147+
syn match rwlDirective '\$oraerror:noshowoci'
143148
syn match rwlDirective '\$oraerror:stop'
144149
syn match rwlDirective '\$oraerror:continue'
145150
syn match rwlDirective '\$oraerror:nocount'
@@ -191,6 +196,7 @@ syn match rwlDirective '\$bindoutname:on'
191196
syn match rwlDirective '\$bindoutname:on:[a-zA-Z][0-9a-zA-Z_]*'
192197
syn match rwlDirective '\$bindoutname:off'
193198
syn match rwlDirective '\$musymbol:[^ ][^ ]*'
199+
syn match rwlDirective '\$musymbolfromstring:[a-zA-Z][a-zA-Z0-9_]*'
194200
syn match rwlDirective '\$hostname:[a-zA-Z0-9_][-a-zA-Z0-9_\.]*'
195201
syn match rwlDirective '\$slashconvert:on'
196202
syn match rwlDirective '\$slashconvert:off'

admin/rwl313.sql

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
-- update the RWP*Load Simulator repository
2+
-- for version 3.1.3
3+
--
4+
-- Copyright (c) 2023 Oracle Corporation
5+
-- Licensed under the Universal Permissive License v 1.0
6+
-- as shown at https://oss.oracle.com/licenses/upl/
7+
--
8+
-- Changes
9+
--
10+
-- NAME DATE COMMENTS
11+
--
12+
-- bengsig 26-apr-2024 osstat
13+
-- bengsig 19-mar-2024 Created
14+
--
15+
create table cstorm
16+
( runnumber number not null
17+
, threadnumber number not null
18+
, begtime number
19+
, endtime number
20+
, offtime number
21+
, errnum number
22+
, errtxt varchar2(200)
23+
, primary key(runnumber, threadnumber)
24+
) ;
25+
26+
create table osstat
27+
( runnumber number not null
28+
, second number not null
29+
, usr1 number(*,6), usr2 number(*,6), usr3 number(*,6), usr4 number(*,6)
30+
, usr5 number(*,6), usr6 number(*,6), usr7 number(*,6), usr8 number(*,6)
31+
, sys1 number(*,6), sys2 number(*,6), sys3 number(*,6), sys4 number(*,6)
32+
, sys5 number(*,6), sys6 number(*,6), sys7 number(*,6), sys8 number(*,6)
33+
, primary key(runnumber, second)
34+
)
35+
/
36+

admin/rwlgrants.sql

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
-- as shown at https://oss.oracle.com/licenses/upl/
66

77
-- History
8+
-- bengsig 26-apr-2024 - osstat
9+
-- bengsig 5-apr-2023 - oltpxc
10+
-- bengsig 19-mar-2023 - cstorm
811
-- bengsig 8-aug-2023 - Missing grant to PERSEC
912
-- bengsig 2017 - Creation
1013

@@ -37,5 +40,7 @@ grant insert,select on SYSRES to rwlpublic;
3740
grant insert,select on OERSTATS to rwlpublic;
3841
grant insert,select on ashdata to rwlpublic;
3942
grant insert,select on rwlash to rwlpublic;
43+
grant insert,select on cstorm to rwlpublic;
44+
grant insert,update,select on oltpxc to rwlpublic;
4045
grant select on runnumber_seq to rwlpublic;
41-
46+
grant insert,select on osstat to rwlpublic;

admin/rwloadsim.sql

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
-- Changes
88
--
99
-- NAME DATE COMMENTS
10+
-- bengsig 26-apr-2024 osstat table
11+
-- bengsig 19-mar-2024 cstorm table
1012
-- bengsig 1-mar-2024 atime,dtime column
1113
-- bengsig 25-apr-2022 MTIT
1214
-- bengsig 1-nov-2022 Make sequence nocache to prevent many lost numbers
@@ -192,3 +194,27 @@ create table oltpxc
192194
, constraint oltpxc_pk primary key(key, hostname)
193195
)
194196
/
197+
198+
create table cstorm
199+
( runnumber number not null
200+
, threadnumber number not null
201+
, begtime number
202+
, endtime number
203+
, offtime number
204+
, errnum number
205+
, errtxt varchar2(200)
206+
, primary key(runnumber, threadnumber)
207+
) ;
208+
209+
-- This table stores gv$sysstat values for USER_TIME and SYS_TIME
210+
-- from up to 8 instances
211+
create table osstat
212+
( runnumber number not null
213+
, second number not null
214+
, usr1 number(*,6), usr2 number(*,6), usr3 number(*,6), usr4 number(*,6)
215+
, usr5 number(*,6), usr6 number(*,6), usr7 number(*,6), usr8 number(*,6)
216+
, sys1 number(*,6), sys2 number(*,6), sys3 number(*,6), sys4 number(*,6)
217+
, sys5 number(*,6), sys6 number(*,6), sys7 number(*,6), sys8 number(*,6)
218+
, primary key(runnumber, second)
219+
)
220+
/

admin/rwlsynonyms.sql

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
-- as shown at https://oss.oracle.com/licenses/upl/
66

77
-- History
8+
-- bengsig 26-apr-2024 - osstat
9+
-- bengsig 5-apr-2024 - cstorm, oltpxc
810
-- bengsig 03-dec-2020 - Add ash
911
-- bengsig 2017 - Creation
1012

@@ -24,4 +26,6 @@ create or replace synonym rwlash for rwloadsim.rwlash;
2426
create or replace synonym ashdata for rwloadsim.ashdata;
2527
create or replace synonym oerstats for rwloadsim.oerstats;
2628
create or replace synonym runnumber_seq for rwloadsim.runnumber_seq;
27-
29+
create or replace synonym cstorm for rwloadsim.cstorm;
30+
create or replace synonym oltpxc for rwloadsim.oltpxc;
31+
create or replace synonym osstat for rwloadsim.osstat;

bin/ashplot

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@
22

33
# RWP*Load Simulator
44
#
5-
# Copyright (c) 2021 Oracle Corporation
5+
# Copyright (c) 2024 Oracle Corporation
66
# Licensed under the Universal Permissive License v 1.0
77
# as shown at https://oss.oracle.com/licenses/upl/
88
#
99
# call rwloadsim -u ashplot.rwl
1010

11+
# bengsig 9-may-2024 - Use exec
1112
# bengsig 27-nov-2023 - Creation
1213

13-
rwloadsim --pretend-gen-banner='RWP*ASH Plot' -u ashplot.rwl "$@"
14+
exec rwloadsim --pretend-gen-banner='RWP*ASH Plot' -u ashplot.rwl "$@"

bin/awrdump

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@
22

33
# RWP*Load Simulator
44
#
5-
# Copyright (c) 2021 Oracle Corporation
5+
# Copyright (c) 2022,2024 Oracle Corporation
66
# Licensed under the Universal Permissive License v 1.0
77
# as shown at https://oss.oracle.com/licenses/upl/
88
#
99
# call rwloadsim -u awrdump.rwl
1010

11+
# bengsig 9-may-2024 - Use exec
1112
# bengsig 23-nov-2022 - Creation
1213

13-
rwloadsim --pretend-gen-banner='RWP*AWR Dump Repository' -u awrdump.rwl "$@"
14+
exec rwloadsim --pretend-gen-banner='RWP*AWR Dump Repository' -u awrdump.rwl "$@"

0 commit comments

Comments
 (0)