Re: Seeing the same session_id used on different nodes alot in RAC 11g

  • From: "keydana@xxxxxx" <keydana@xxxxxx>
  • To: riyaj.shamsudeen@xxxxxxxxx
  • Date: Fri, 27 Feb 2015 18:24:11 +0100

Wanted to know for a long time, this is the opportunity to ask, - what exactly 
do you mean by that (segmented array signifying „list is in-built“)?

Does it mean the structs (the elements of the array) have pointers to the 
previous & next element? (If yes, I wouldn’t have guessed that from the 
expression „segmented array“)

thanks!
Sigrid



> Am 27.02.2015 um 18:14 schrieb Riyaj Shamsudeen <riyaj.shamsudeen@xxxxxxxxx>:
> 
> Minor correction: x$kuse is not just an array, it is a segmented array, which 
> means that linked list is in-built.
> 
> Cheers
> 
> Riyaj Shamsudeen
> Principal DBA,
> Ora!nternals -  http://www.orainternals.com <http://www.orainternals.com/> - 
> Specialists in Performance, RAC and EBS
> Blog: http://orainternals.wordpress.com/ <http://orainternals.wordpress.com/>
> Oracle ACE Director and OakTable member <http://www.oaktable.com/>
> Co-author of the books: Expert Oracle Practices 
> <http://tinyurl.com/book-expert-oracle-practices/>, Pro Oracle SQL,  
> <http://tinyurl.com/ahpvms8> <http://tinyurl.com/ahpvms8>Expert RAC Practices 
> 12c. <http://tinyurl.com/expert-rac-12c> Expert PL/SQL practices 
> <http://tinyurl.com/book-expert-plsql-practices>
> 
>  <http://tinyurl.com/book-expert-plsql-practices>
> 
> 
> On Fri, Feb 27, 2015 at 9:00 AM, Riyaj Shamsudeen <riyaj.shamsudeen@xxxxxxxxx 
> <mailto:riyaj.shamsudeen@xxxxxxxxx>> wrote:
> It's been a while, I researched this, things may have changed recently: 
> x$ksuse is the externalization of the session memory array (and a few other 
> x$ table were also externalizing that memory area starting with x$ksuse*). 
> There is also a freelist (a doubly linked list, I think) keeping track of 
> free slots in the array, protected by a latch. At the session logoff time, 
> that sid is added to the head of the linked list. At session logon time, the 
> element from the head of the list is assigned. That's the reason why same sid 
> is reused if you logoff and login quick succession.
> 
> 
> Cheers
> 
> Riyaj Shamsudeen
> Principal DBA,
> Ora!nternals -  http://www.orainternals.com <http://www.orainternals.com/> - 
> Specialists in Performance, RAC and EBS
> Blog: http://orainternals.wordpress.com/ <http://orainternals.wordpress.com/>
> Oracle ACE Director and OakTable member <http://www.oaktable.com/>
> Co-author of the books: Expert Oracle Practices 
> <http://tinyurl.com/book-expert-oracle-practices/>, Pro Oracle SQL,  
> <http://tinyurl.com/ahpvms8> <http://tinyurl.com/ahpvms8>Expert RAC Practices 
> 12c. <http://tinyurl.com/expert-rac-12c> Expert PL/SQL practices 
> <http://tinyurl.com/book-expert-plsql-practices>
> 
>  <http://tinyurl.com/book-expert-plsql-practices>
> 
> 
> On Fri, Feb 27, 2015 at 7:47 AM, Mladen Gogala <dmarc-noreply@xxxxxxxxxxxxx 
> <mailto:dmarc-noreply@xxxxxxxxxxxxx>> wrote:
> On 02/27/2015 10:17 AM, Jeremy Schneider wrote:
> This is a guess, but I think the session_id is just an offset into a
> memory array of session info.
> 
> Yes, it is. And serial# is just the number of the times that the session slot 
> has been reused.
> 
> -- 
> Mladen Gogala
> Oracle DBA
> http://mgogala.freehostia.com <http://mgogala.freehostia.com/>
> 
> --
> //www.freelists.org/webpage/oracle-l 
> <//www.freelists.org/webpage/oracle-l>
> 
> 
> 
> 

Other related posts: