Home » RDBMS Server » Server Administration » Simulator transaction in oracle 11g (Oracle 11g, Linux 5.10)
Simulator transaction in oracle 11g [message #624449] Mon, 22 September 2014 22:53 Go to next message
trybestpro
Messages: 17
Registered: September 2014
Location: HCM
Junior Member
Hi all,
I want see how to handle oracle when number of concurrent transactions more than MAX_TRANS of table.
But in Oracle 11g default MAX_TRANS = 255, so I want simulator transactions to see that.
Thanks.
Re: Simulator transaction in oracle 11g [message #624450 is a reply to message #624449] Mon, 22 September 2014 23:13 Go to previous messageGo to next message
BlackSwan
Messages: 26766
Registered: January 2009
Location: SoCal
Senior Member
>But in Oracle 11g default MAX_TRANS = 255, so I want simulator transactions to see that.
reduce MAX_TRANS=5 & simulate away.
You do not need permission from anyone here.
Re: Simulator transaction in oracle 11g [message #624453 is a reply to message #624449] Tue, 23 September 2014 00:29 Go to previous messageGo to next message
Michel Cadot
Messages: 68728
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator

MAXTRANS is ignored in 1Og and up and set to 255.
So if you want to see what happens in case transactions exceed MAXTRANS you must have more than 255 concurrent transactions in the same block.

... or you can used INITRANS 1, PCTFREE 0, fill blocks in the table and then use a couple of sessions with UPDATE on the same blocks.

Re: Simulator transaction in oracle 11g [message #624487 is a reply to message #624453] Tue, 23 September 2014 03:29 Go to previous messageGo to next message
trybestpro
Messages: 17
Registered: September 2014
Location: HCM
Junior Member
Hi,

Michel Cadot wrote on Tue, 23 September 2014 08:29


So if you want to see what happens in case transactions exceed MAXTRANS you must have more than 255 concurrent transactions in the same block.



I can't do it.

Michel Cadot wrote on Tue, 23 September 2014 08:29


... or you can used INITRANS 1, PCTFREE 0, fill blocks in the table and then use a couple of sessions with UPDATE on the same blocks.



Sorry,I don't understand. What is it means?
Thanks.

p/s: I'm beginner, so hope you sympathy for me.

[Updated on: Tue, 23 September 2014 03:30]

Report message to a moderator

Re: Simulator transaction in oracle 11g [message #624489 is a reply to message #624487] Tue, 23 September 2014 03:37 Go to previous messageGo to next message
John Watson
Messages: 8962
Registered: January 2010
Location: Global Village
Senior Member
trybestpro wrote on Tue, 23 September 2014 09:29
Hi,

Michel Cadot wrote on Tue, 23 September 2014 08:29


So if you want to see what happens in case transactions exceed MAXTRANS you must have more than 255 concurrent transactions in the same block.



I can't do it.

<snip>

Of course you can do it, you just haven't tried. There is an example here http://www.orafaq.com/node/2907 of Windows shell scripts that will let you launch any number of concurrent sessions for simulations like this.
Re: Simulator transaction in oracle 11g [message #624493 is a reply to message #624487] Tue, 23 September 2014 04:07 Go to previous messageGo to next message
Michel Cadot
Messages: 68728
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
trybestpro wrote on Tue, 23 September 2014 10:29
Hi,
Michel Cadot wrote on Tue, 23 September 2014 08:29


... or you can used INITRANS 1, PCTFREE 0, fill blocks in the table and then use a couple of sessions with UPDATE on the same blocks.



Sorry,I don't understand. What is it means?
Thanks.

p/s: I'm beginner, so hope you sympathy for me.


INITRANS and PCTFREE are options of CREATE TABLE.
fill blocks mean INSERT statements.

If you are so beginner that you don't understand this sentence, I think it is useless you go to so deep experience you are trying to do now. First learn the basics, then go to expert fields.


Re: Simulator transaction in oracle 11g [message #624573 is a reply to message #624493] Tue, 23 September 2014 10:19 Go to previous messageGo to next message
trybestpro
Messages: 17
Registered: September 2014
Location: HCM
Junior Member
Hi,
I also have basic knowledge, oracle architecture.
I understand about Storage parameter, but I don't know how to have more than 255 concurrent transactions in the same block.
But, My teacher ask me do it.
Thank you all very much.
Razz Razz Razz
Re: Simulator transaction in oracle 11g [message #624574 is a reply to message #624573] Tue, 23 September 2014 10:31 Go to previous messageGo to next message
John Watson
Messages: 8962
Registered: January 2010
Location: Global Village
Senior Member
Think it through!

Clearly, you need more than 255 rows in a block. Create a table with just one numeric column, and insert a few hundred rows, each with a different value.

Prove that you have more than 255 rows per block, perhaps by looking at the rowids with dbms_rowid.rowid_block_number.

Write a shell script that will log on more than 255 sessions. I've already pointed you towards a technique I use with Windows shell scripts, if you prefer Unix shell scripts, write your own.

Configure your shell script so that each session will update a different row in the same block.

Observe the result.

OK?

Re: Simulator transaction in oracle 11g [message #624576 is a reply to message #624573] Tue, 23 September 2014 10:59 Go to previous messageGo to next message
Michel Cadot
Messages: 68728
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator

As I said you don't need 255 sessions if you follow what I said.

Re: Simulator transaction in oracle 11g [message #624579 is a reply to message #624576] Tue, 23 September 2014 12:37 Go to previous message
trybestpro
Messages: 17
Registered: September 2014
Location: HCM
Junior Member
I'm understand. All are great.
Thanks all.
Previous Topic: Example about PCTUSED and PCTFREE in oracle 11g.
Next Topic: Which is better for a lot of sessions in oracle database?
Goto Forum:
  


Current Time: Sun Dec 22 01:11:37 CST 2024