Forum Stats

  • 3,768,285 Users
  • 2,252,771 Discussions
  • 7,874,515 Comments

Discussions

Last_call_et keeps resetting, no other evidence of activity

JustinCave
JustinCave Member Posts: 30,293 Gold Crown
edited Sep 20, 2013 6:18PM in General Database Discussions

I'm trying to debug an issue with a process that pulls a bunch of data into an Access database from a couple of Oracle databases (yes, we're working on killing Access).  Almost everything I can see is telling me that Oracle is doing nothing and it's purely an Access issue but last_call_et in v$session keeps resetting itself which makes me believe that Oracle is doing something.  I'd be really appreciative if anyone can help me figure out what I'm missing.

What I'm Seeing

When I query gv$session, I'm seeing the session that Access opened.  Every time I look, the status is INACTIVE, sql_id is NULL, and prev_sql_id is a constant value.  When I look at gv$sql for that prev_sql_id, executions isn't increasing and executions = end_of_fetch_count.  So far, so good, Oracle's off the hook.

However, when I pull in LAST_CALL_ET from gv$session, that value never gets above 10 seconds.  It's constantly resetting.  That makes me believe that Oracle is doing something every few seconds.  But I can't for the life of me think of anything that it could possibly be doing that wouldn't cause a change in prev_sql_id or a change in the number of executions of the SQL statement.

Is there something that I'm overlooking here?

Thanks!

Justin

Best Answer

  • Jonathan Lewis
    Jonathan Lewis Member Posts: 9,786 Gold Crown
    edited Sep 20, 2013 6:23PM Accepted Answer
    JustinCave wrote:
    
    gv$session_wait_history is reporting events of
    
    SQL*Net message to client
    SQL*Net message from client
    
    It does appear that the Access changes resolved the overall issue.  But while Access was chugging away, I was still seeing LAST_CALL_ET getting reset with no other obvious signs of activity.
    
    Justin
    
    

    If it was changing between FROM and TO there must have been some message coming from Access and bouncing back without an error. Possibly some sort of OCI "ping" type call that didn't involve an SQL statement.

    Update:  something like a "set context" or "set client identifier" perhaps; possibly a (non-SQL) rollback or commit


    Regards

    Jonathan Lewis

Answers

  • Jonathan Lewis
    Jonathan Lewis Member Posts: 9,786 Gold Crown

    Which version of Oracle ?

    What does v$session_wait_history show for that session.

    What do you see as the state and event over a short set of queries to v$session for that sid ?

    Regards

    Jonathan Lewis


  • JustinCave
    JustinCave Member Posts: 30,293 Gold Crown

    Sorry.

    The database is 11.2.0.3 on AIX.

    I'll take a look at gv$session_wait_history momentarily, we've killed the process and are restarting after giving the Access database a couple good kicks in the pants.

    Justin

  • JustinCave
    JustinCave Member Posts: 30,293 Gold Crown

    gv$session_wait_history is reporting events of

    SQL*Net message to client

    SQL*Net message from client

    It does appear that the Access changes resolved the overall issue.  But while Access was chugging away, I was still seeing LAST_CALL_ET getting reset with no other obvious signs of activity.

    Justin

  • Jonathan Lewis
    Jonathan Lewis Member Posts: 9,786 Gold Crown
    edited Sep 20, 2013 6:23PM Accepted Answer
    JustinCave wrote:
    
    gv$session_wait_history is reporting events of
    
    SQL*Net message to client
    SQL*Net message from client
    
    It does appear that the Access changes resolved the overall issue.  But while Access was chugging away, I was still seeing LAST_CALL_ET getting reset with no other obvious signs of activity.
    
    Justin
    
    

    If it was changing between FROM and TO there must have been some message coming from Access and bouncing back without an error. Possibly some sort of OCI "ping" type call that didn't involve an SQL statement.

    Update:  something like a "set context" or "set client identifier" perhaps; possibly a (non-SQL) rollback or commit


    Regards

    Jonathan Lewis

This discussion has been closed.