Code Monkey home page Code Monkey logo

slob_distribution's People

Contributors

therealkevinc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

slob_distribution's Issues

Redo tests starting from 12cR2 affected by redo optimization

Hi Kevin,

Starting with 12cR2 the HEAVY redo mode (and I think the LIGHT too) does not produce the same volumes of redo as it used to before 12cR1 due to optimization I described in https://blog.pythian.com/redo-volume-optimization-in-12c-r2/

I think it'd be useful to modify the SLOB so that the the testing worked around the optimization described. I attempted a quick workaround (https://gitlab.com/MarisElsins/Public/snippets/1728857) and it worked nicely for my tests, but it may not be optimal under more capable systems as I think it might show some contention in obtaining the current SCN. Probably a global PL/SQL variable would be a better option for generating different values to use in the update statements.

P.S. reporting it here as I couldn't find a better way to reach you.
P.S.2. I'll remove the snippet from the Gitlab once you've seen it.

Maris

setup.sh script fails with syntax error

./setup.sh SLOB 3
NOTIFY  : 2020.10.23-12:23:41 : Begin SLOB 2.5.2 setup.
NOTIFY  : 2020.10.23-12:23:41 : ADMIN_CONNECT_STRING: "system/manager"
NOTIFY  : 2020.10.23-12:23:41 : Load parameters from slob.conf:

SCALE: 80M (10240 blocks)
SCAN_TABLE_SZ: 1M (128 blocks)
LOAD_PARALLEL_DEGREE: 2
ADMIN_SQLNET_SERVICE: ""
SYSDBA_PASSWD: "manager"
DBA_PRIV_USER: "system"

Note: setup.sh will use the following connect strings as per slob.conf:
        Admin Connect String: "system/manager"
        Non-Admin Connect String: " "

NOTIFY  : 2020.10.23-12:23:41 : Testing Admin connect using "sqlplus -L system/manager"
./setup.sh: line 250: [[: 0
1: syntax error in expression (error token is "1")
./setup.sh: line 252: return: too many arguments
FATAL   : 2020.10.23-12:23:44 :
FATAL   : 2020.10.23-12:23:44 : Please run the following query:
                                SELECT COUNT(*) FROM V$SESSION WHERE USERNAME LIKE 'USER%';
FATAL   : 2020.10.23-12:23:44 : There are existing connections to the database.
FATAL   : 2020.10.23-12:23:44 : Cannot drop schemas while sessions are connected.
FATAL   : 2020.10.23-12:23:44 : Abort.

This is caused by the fact that the query to check for the session count does not disable row feedback and the regex used to parse it does not filter it out.

bash -x setup.sh SLOB 3

+ num_sessions='
         0

1 row selected.'
++ echo '
         0

1 row selected.'
++ f_sqlplus_numeric_only_output
++ sed -e '/[A-Z]/d' -e /---/d -e '/^$/d' -e 's/[^0-9]//g'
+ num_sessions='0
1'
+ [[ 0
1 -ne 0 ]]
setup.sh: line 247: [[: 0
1: syntax error in expression (error token is "1")
+ return 0 1
setup.sh: line 249: return: too many arguments

The simple fix is to disable feedback for this query:

num_sessions=`sqlplus -S -L $constring  <<EOF
set head off feedback off
SELECT COUNT(*) FROM V\\$SESSION WHERE USERNAME LIKE 'USER%';
EOF
`

snapshot id number in f_snap_database_stats()

Thank you for this excellent tool!

I've found a kind of bug (i guess). When one is using resetlogs (after nid), awr snapshot sequence is resetting to 1, but previous incarnation shapshots are also stay in the database (with larger id). This way f_snap_database_stats function gives incorrect snap ids with current SQL (when using awr reports):
SELECT MAX(SNAP_ID) FROM dba_hist_snapshot

Maybe it's better to join on v$database or some other workarounds (i don't have RAC instances here to check)
SELECT MAX(SNAP_ID)
FROM dba_hist_snapshot
WHERE dbid IN (SELECT dbid FROM v$database);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.