Home > database >  ORACLE ZhaXunKa death
ORACLE ZhaXunKa death

Time:09-17

Project in the process of running, incidental project query is stuck in there, but confirmed that SQL is no problem, the back log records for a few days, found a regular card dead
Here is a card dead point in time:
The 2019-05-24 15:33:32
The 2019-05-24 14:34:05
The 2019-05-24 13:13:28
The 2019-05-24 10:43:28
The 2019-05-24 09:13:11
The 2019-05-24 08:33:22
The 2019-05-24 07:53:22
The 2019-05-24 05:53:13
The 2019-05-24 04:44:17
The 2019-05-24 04-03:07
The 2019-05-24 02:54:21
The 2019-05-24 01:53:21
The 2019-05-24 00:23:07

Discover dead time is about at the time of 3 points, card died a few days before the time is also similar, middle to restart the project, but the card dead time is still very happen to be three points or so, database query after the death of card also can not find relevant deadlock, project back to normal after the restart, query card dead table data quantity is not big, up to dozens of data at a time,

Ask your bosses can mean way, probably problem may be the where,

Enclosed card die project jstack log:
Java. Lang. Thread. The State: RUNABLE
The at java.net.SocketInputStream.sockerRead0 (Native Method)
The at java.net.SocketInputStream.socketRead SocketInputStream. Java: (116)
The at java.net.SocketInputStream.read SocketInputStream. Java: (171)
The at java.net.SocketInputStream.read SocketInputStream. Java: (141)
At oracle.net.ns.Packet.receive (239) Packet. Java:
The at oracle.net.ns.DataPacket.receive DataPacket. Java: (92)

Every time when receiving blocks, there couldn't lead to query data,

CodePudding user response:

Make sure this is the database card dead, or application card dead,


When this happens, you put this statement in Oracle client that executes once, see if I can normal results,

CodePudding user response:

reference 1st floor selling fruit net reply:
make sure this is the database card dead, or application card dead,


When this happens, you put this statement in Oracle client that executes once, see if I can normal results,


After this case, the database can execute SQL query results properly, problems should be a short period of time, the application does not appear a deadlock, memory leaks, all of these cases, database should be stuck to, the same procedure to change the database is normal,

CodePudding user response:

Ultimately failed to locate jammed, query, query methods for single table conditions very simple query, the final solution is to query the step to multithreaded queries, using a thread thread of auxiliary class CountDownLatch delay processing, guarantee to return the result then continue processing, even if some of the time ZhaXunKa die, also does not affect the next timer query; To build a class monitor, monitor card dead query threads, are regularly cleaned, the problem that solve temporarily, project running two weeks did not appear problem,

CodePudding user response:

If is the problem that the database should be met certain query execution plan is not an ideal situation, is likely to be caused by two functions:
1, the ACS cursor adaptive, Oracle will as the value of the variable bindings, automatically adjust the SQL execution plan, in this case, the SQL to remove, bringing the actual value to SQL to perform again to see how quickly it is meaningless, want to see is it the actual execution of the plan at the time, can pass who runs AWR, or dbms_xplan. Display_cursor, dbms_xplan. Display_awr method to obtain the possible execution plan;
2, cardinality feedback, feedback base function, as the change of value conditions in SQL, SQL execution plan could change
If it is in both cases, personal feel or should study the plug when the SQL and the table data query, if appropriate, you can try to induce the CBO use prompted fixed execution plan to see can avoid this problem,

CodePudding user response:

reference 4 floor minsic78 response:
if is a problem of database, should be met certain query execution plan is not an ideal situation, is likely to be caused by two functions:
1, the ACS cursor adaptive, Oracle will as the value of the variable bindings, automatically adjust the SQL execution plan, in this case, the SQL to remove, bringing the actual value to SQL to perform again to see how quickly it is meaningless, want to see is it the actual execution of the plan at the time, can pass who runs AWR, or dbms_xplan. Display_cursor, dbms_xplan. Display_awr method to obtain the possible execution plan;
2, cardinality feedback, feedback base function, as the change of value conditions in SQL, SQL execution plan could change
If it is in both cases, personal feel or should study the plug when the SQL and the table data query, if appropriate, can try to use the tips to induce the CBO choose fixed execution plan see can avoid this kind of problem,


Say if you are using bind variables, the actual values in the SQL to run is meaningless, because will bind variables replacement for the actual value, actually the SQL and use bind variables of SQL, the text has occurred on the variable, it has been two SQL, generate different execution plan, ran out of the different performance is very normal,

CodePudding user response:

Have met this problem before, check the result is the TABLE there is a relationship between the trigger, so please check whether

CodePudding user response:

refer to 6th floor wilson1966 response:
has also met this problem before, check the result is the TABLE there is a relationship between the trigger, so please check whether


This is a way of thinking, may also may be like the JOB, so, also need to grasp the problem period of ASH report is better
  • Related