From 9588cdc78770ff24be34270da1cb23245b328225 Mon Sep 17 00:00:00 2001 From: Bjorn Kisbye Engsig Date: Wed, 3 Jul 2024 09:55:05 +0000 Subject: [PATCH 1/4] no dropped in stead of 0% dropped --- bin/oltpplot | 3 ++- oltp/plotinfo.rwl | 11 ++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/bin/oltpplot b/bin/oltpplot index 75759bc..3706d91 100755 --- a/bin/oltpplot +++ b/bin/oltpplot @@ -5,6 +5,7 @@ # Changes: # +# 3-jul-2024 bengsig 0% dropped -> no dropped # 22-may-2024 bengsig Split long gnuplot lines # 21-may-2024 bengsig memory is logscale due to large differences # 17-may-2024 bengsig add PGA @@ -203,7 +204,7 @@ eval `rwloadsim -q plotinfo.rwl --myrunnumber=$runnumber` if test $fractdrop = no then - fracttext="Execution time fractiles ($droppct% dropped)" + fracttext="Execution time fractiles ($droppct dropped)" else fracttext='Execution time fractiles (dropped "cost" 2s)' fi diff --git a/oltp/plotinfo.rwl b/oltp/plotinfo.rwl index 70c8f8a..c918b15 100644 --- a/oltp/plotinfo.rwl +++ b/oltp/plotinfo.rwl @@ -6,6 +6,7 @@ # # Return some shell variables needed for oltpplot +# bengsig 3-jul-2024 - 0% dropped -> no dropped # bengsig 9-may-2024 - Add drop% # bengsig 19-mar-2024 - Better adtime check # bengsig 5-mar-2024 - Creation @@ -58,15 +59,15 @@ execute at rwloadsim if forg = "GOOD" then goodcount := fgcount; end if; end loop; if failcount is not null and goodcount is not null then - if failcount > 0.98 * goodcount then - printf "droppct=%.0f\n", 100*failcount/goodcount; + if failcount > 0.4 * goodcount then + printf "droppct=%.0f%%\n", 100*failcount/goodcount; elseif failcount > 0.1 * goodcount then - printf "droppct=%.1f\n", 100*failcount/goodcount; + printf "droppct=%.1f%%\n", 100*failcount/goodcount; else - printf "droppct=%.2f\n", 100*failcount/goodcount; + printf "droppct=%.2f%%\n", 100*failcount/goodcount; end if; else - printf "droppct=0\n"; + printf "droppct=no\n"; end if; end; From 2ee6092e3ebb4f51db7d46a188523db213324952 Mon Sep 17 00:00:00 2001 From: Bjorn Kisbye Engsig Date: Wed, 3 Jul 2024 13:49:18 +0000 Subject: [PATCH 2/4] Changed end-to-end colors --- bin/oltpplot | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/bin/oltpplot b/bin/oltpplot index 3706d91..4542965 100755 --- a/bin/oltpplot +++ b/bin/oltpplot @@ -5,6 +5,7 @@ # Changes: # +# 3-jul-2024 bengsig changed end-to-end colors # 3-jul-2024 bengsig 0% dropped -> no dropped # 22-may-2024 bengsig Split long gnuplot lines # 21-may-2024 bengsig memory is logscale due to large differences @@ -688,12 +689,12 @@ END then cat >> $resultsdir$subdir${runnumber}/${vname}_waitexec.plot < Date: Thu, 4 Jul 2024 09:58:57 +0000 Subject: [PATCH 3/4] Add -2 option to oltpxcrun --- bin/oltpxcrun | 7 ++++--- docs/refman/oltpxcrun.html | 9 +++++++-- man/man2rwl/oltpxcrun.2rwl | 7 ++++++- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/bin/oltpxcrun b/bin/oltpxcrun index 608ae89..b1473e5 100755 --- a/bin/oltpxcrun +++ b/bin/oltpxcrun @@ -13,8 +13,8 @@ . oltp-setup-env -options="gGk:HaR:hHr: -l help,key:,runperiod:,no-default,default,no-awr" -usage="$commandname [-H] [-g|-G] [-a] [--default] [--no-awr] [-k|--key key] [-R file] [-r runperiod] [komment text ...]" +options="2gGk:HaR:hHr: -l help,key:,runperiod:,no-default,default,no-awr" +usage="$commandname [-H] [-g|-G] [-a] [-2] [--default] [--no-awr] [-k|--key key] [-R file] [-r runperiod] [komment text ...]" help=no key="$RWLOLTP_NAME" @@ -45,7 +45,7 @@ do ;; --no-awr) copyargs="$copyargs --no-awr"; shift; ;; - -W|-a|-g|-G) copyargs="$copyargs $1"; shift; + -2|-W|-a|-g|-G) copyargs="$copyargs $1"; shift; ;; -H|--help|-h ) help=yes; shift; ;; @@ -64,6 +64,7 @@ cat < - + @@ -45,7 +45,7 @@

SYNOPSIS

oltpxcrun -[-H] [-g|-G] [-a] [-k key] [-R file] [-r runperiod] +[-H] [-g|-G] [-a] [-2] [-k key] [-R file] [-r runperiod] [--no-awr] [--default] [komment text ...]

Continuously @@ -118,6 +118,11 @@

OPTIONS the run. Only use this if the automatic allocation via interval partitions appears to cause trouble

+

-2

+ +

Use side 2 of the +aw_transaction workload - needed in special cases only.

+

USAGE

diff --git a/man/man2rwl/oltpxcrun.2rwl b/man/man2rwl/oltpxcrun.2rwl index 91b7bdd..cb02ff8 100644 --- a/man/man2rwl/oltpxcrun.2rwl +++ b/man/man2rwl/oltpxcrun.2rwl @@ -2,7 +2,7 @@ .SH NAME oltpxcrun \- Execute oltpcore with external control .SH SYNOPSIS -\fBoltpxcrun [-H] [-g|-G] [-a] [-k key] [-R file] [-r runperiod] [--no-awr] [--default] [komment text ...]\fR +\fBoltpxcrun [-H] [-g|-G] [-a] [-2] [-k key] [-R file] [-r runperiod] [--no-awr] [--default] [komment text ...]\fR .P Continuously make long runs with external control. .SH OPTIONS @@ -62,6 +62,11 @@ at the start of the run. Only use this if the automatic allocation via interval partitions appears to cause trouble .RE +.P +.B -2 +.RS 4 +Use side 2 of the aw_transaction workload - needed in special cases only. +.RE .SH USAGE The .B oltpxcrun From 6e39a169bdf70cfa8de4fc3e6e717316ad5aebb7 Mon Sep 17 00:00:00 2001 From: Bjorn Kisbye Engsig Date: Mon, 8 Jul 2024 16:48:24 +0000 Subject: [PATCH 4/4] Release 3.1.3 --- CHANGELOG.md | 2 ++ docs/ERRORLIST.md | 5 +++++ docs/INSTALL.md | 24 +++++++++++++++++++----- docs/ORACLENET.md | 4 ++-- src/rwl.h | 5 +++-- 5 files changed, 31 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a3c28e..6ad09da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,8 @@ * The ashplot command can output a running graph * Added -= assignment * Various improvements to statistics gathering +* Client version 18 no longer supported +* Client version 23 now included ## 3.1.2 diff --git a/docs/ERRORLIST.md b/docs/ERRORLIST.md index 13efb91..5cc5a12 100644 --- a/docs/ERRORLIST.md +++ b/docs/ERRORLIST.md @@ -1315,6 +1315,11 @@ The $ora01013:break directive is in effect and ctrl-c has caused a break. You need to also have a $ora01013:reset directive later in your rwl program to allow any clean up procedures to be called. +### RWL-323 error: "Only %d out of %d NLS characters from clob saved in string of size %d bytes" +When performing the OCILobRead2 call, the clob in the database has more +characters than would would fit in the string variable provided. The return +value has been truncated to a lower of number of characters. + ### RWL-600 internal error: '%s' An abnormal situation caused an internal error in rwloadsim. This is in most cases due to a programming error and it diff --git a/docs/INSTALL.md b/docs/INSTALL.md index d791f08..829b937 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -8,7 +8,7 @@ There are three types of binary distributions available at github releases: ### Using complete binaries -Complete binaries distributed in a file such rwloadsim-linux-x86_64-bin-3.1.2.tgz +Complete binaries distributed in a file such rwloadsim-linux-x86_64-bin-3.1.3.tgz can be used as is, i.e. without getting a clone or pull from github. It should be used if you simply want a full run time environment and it contains the following directories: @@ -27,7 +27,7 @@ and it contains the following directories: If you prefer to have access to source code, but avoid building the executables, you can clone or pull from github (which would allow you to potentially compile rwloadsim yourself), and then -use a file like rwloadsim-linux-x86_64-binonly-3.1.2.tgz. +use a file like rwloadsim-linux-x86_64-binonly-3.1.3.tgz. This file contains little more than the compiled binaries of the rwloadsim program, and you can simply un-tar this file directly into your cloned or pulled directory; the result will be as if you had @@ -46,7 +46,7 @@ On the system where you are going to run rwloadsim, create a (possibly shared) directory where you simply use a command like ``` -tar -zxvf rwloadsim-linux-x86_64-bin-3.1.2.tgz +tar -zxvf rwloadsim-linux-x86_64-bin-3.1.3.tgz ``` One install can be shared between several users as long as all have access to the directory. If appropriate, you can put the directory on an NFS (or some other) share and make it available to multiple systems. @@ -66,7 +66,7 @@ You can use Oracle Instant Client or a full client (or even server) install. Start by doing a pull or clone of the sources from github as if you would do your own compile, and then use a command like ``` -tar -zxvf rwloadsim-linux-x86_64-binonly-3.1.2.tgz +tar -zxvf rwloadsim-linux-x86_64-binonly-3.1.3.tgz ``` to extract little more than the compiled rwloadsim binaries into your already existing pull or clone. @@ -157,7 +157,21 @@ If you are sharing the repository between many different users/projects, having the grants are set to only allow the needed access to the various repository tables. For most tables, this is insert and select. -### Updating the repostitory to version 3.1.2 +### Updating the repository to version 3.1.3 + +In versino 3.1.3, there are two new tables added to the repository +and you therefore need to update the repository. +The upgrade is done by logging in to your repository schema +using sqlplus and executing both of rwl313.sql and rwlgrants.sql. + +If you have a second repository schema, you need to run +rwlsynonyms.sql logged in using sqlplus. + +Note that this (and previous) updates are not cummulative, +so if you are upgrading to 3.1.3 from a version earlier than +3.1.2, you first need to perform the 3.1.2 repository update. + +### Updating the repository to version 3.1.2 In version 3.1.2, there is a new column added to oltpxc and any existing repository need to be updated to reflect this. diff --git a/docs/ORACLENET.md b/docs/ORACLENET.md index 966b805..f45879f 100644 --- a/docs/ORACLENET.md +++ b/docs/ORACLENET.md @@ -52,7 +52,7 @@ or ```rwlman nettest```. In addition to being part of the full rwloadsim distribution, the three utilities are distributed together with other as completely stand-alone -executables in the file generated-linux-x86_64-bin-3.1.2.tgz. +executables in the file generated-linux-x86_64-bin-3.1.3.tgz. It only contains the executable files, and they can be used without a complete installation of rwloadsim, as long as there is an Oracle client environment that can be an ordinary installation or an Instant Client installation. @@ -63,7 +63,7 @@ with Instant Client it is the top directory of the installation. After download, simply execute ``` -tar -zxvf generated-linux-x86_64-bin-3.1.2.tgz +tar -zxvf generated-linux-x86_64-bin-3.1.3.tgz ``` and possibly move the executables to one of the directories in your PATH. To get help for either, call it with the -h option. diff --git a/src/rwl.h b/src/rwl.h index 0433f90..31318fb 100644 --- a/src/rwl.h +++ b/src/rwl.h @@ -11,6 +11,7 @@ * * History * + * bengsig 8-jul-2024 - Releasing 3.1.3 production * bengsig 4-jun-2024 - $ora01013:break * bengsig 27-may-2024 - Improve some comments * bengsig 17-apr-2024 - nostatistics statement @@ -2351,8 +2352,8 @@ extern const char rwlexecbanner[]; #define RWL_VERSION_MAJOR 3 #define RWL_VERSION_MINOR 1 -#define RWL_VERSION_RELEASE 2 -#define RWL_VERSION_TEXT "Development" RWL_EXTRA_VERSION_TEXT +#define RWL_VERSION_RELEASE 3 +#define RWL_VERSION_TEXT "Production" RWL_EXTRA_VERSION_TEXT #define RWL_VERSION_DATE // undef to not include compile date extern ub4 rwlpatch;