RE: kdmsIMCURelease
- From: Noveljic Nenad <nenad.noveljic@xxxxxxxxxxxx>
- To: 'Tanel Poder' <tanel@xxxxxxxxxxxxxx>
- Date: Wed, 10 Jan 2018 09:19:08 +0000
Hi Tanel,
Thank you for geeking into the problem! ☺
I’ll set both IM memory parameters to false. However, the problem appeared just
once and I can’t reproduce it at will. What I can do, is to check with DTrace
whether the execution of kdmsIMCURelease gets suppressed when the parameters
are set to false.
By the way, there are some more details to the problem:
Disass information :
kdmsIMCURelease()+13 (0x23fc95d) push %r15
kdmsIMCURelease()+15 (0x23fc95f) sub $88,%rsp
kdmsIMCURelease()+19 (0x23fc963) mov %rdi,%r13
kdmsIMCURelease()+22 (0x23fc966) mov 0x1c8(%r13),%rbx
kdmsIMCURelease()+29 (0x23fc96d) mov 0x188(%rbx),%r12
kdmsIMCURelease()+36 (0x23fc974) lea 0x28(%rbx),%rdi
kdmsIMCURelease()+40 (0x23fc978) xor %rax,%rax
kdmsIMCURelease()+43 (0x23fc97b) call 0x24275d0
Curiously, the disassembled code is in the trace file.
SIGSEGV was generated while executing the line 29 based on the %rbx register,
which sadly contained an invalid address:
%rbx: 0xff00000000000000
%rbx, in turn, was initialized in the line 22 based on the address stored in
%r13, which contains some PGA address:
%r13: 0xffff80ffbbf30ff8
Hi Andy,
Thank you for taking a look at the problem! I’ll open an SR and send you the
reference.
Best regards,
Nenad
http://nenadnoveljic.com/blog/
Twitter: @NenadNoveljic
From: tanel@xxxxxxxxxx [
mailto:tanel@xxxxxxxxxx] On Behalf Of Tanel Poder
Sent: Mittwoch, 10. Januar 2018 01:41
To: Tanel Poder
Cc: Noveljic Nenad; ORACLE-L (oracle-l@xxxxxxxxxxxxx)
Subject: Re: kdmsIMCURelease
You can also try to set optimizer_inmemory_aware = false as a second parameter
to test, although the crash didn't happen in optimization phase, but later
during the execution (but optimizer's earlier actions do of course affect
execution-time activities later on).
--
Thanks,
Tanel Poder
On Tue, Jan 9, 2018 at 6:26 PM, Tanel Poder
<tanel@xxxxxxxxxxxxxx<
mailto:tanel@xxxxxxxxxxxxxx>> wrote:
Thanks for a good excuse for geeking out ;-)
This stack trace shows that the problem happens during execution phase of your
select statement - selexe(). The QEC in qecrlssub() means something like Query
Execution sql Capability checking.
And I guess you are hitting a bug when finishing a table or partition scan -
qertbRelease() - Oracle tries to release a pin on some in-memory compression
unit that it thinks has been pinned during the scan. Perhaps it thinks that
some IMCU has been "opened" due to the capability check of whether a
table/block region is cached in the IM columnstore. Or something like that
(it's a bug, who knows).
But given that Oracle's trying to do IMCU checks when you don't even have
tables cached in memory - try setting alter session set inmemory_query = false
(it's true by default) and rerun your query, maybe it alters the code path so
it doesn't even hit this buggy codepath.
--
Thanks,
Tanel Poder
P.S. Oh, almost forgot to mention, I'm running my AOT seminar one more time
this year ;-)
http://blog.tanelpoder.com/seminar
____________________________________________________
Please consider the environment before printing this e-mail.
Bitte denken Sie an die Umwelt, bevor Sie dieses E-Mail drucken.
<html xmlns="
http://www.w3.org/1999/xhtml";>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">p { font-family: Arial;font-size:9pt }</style>
</head>
<body>
<p>
<br>Important Notice</br>
<br>This message is intended only for the individual named. It may contain
confidential or privileged information. If you are not the named addressee you
should in particular not disseminate, distribute, modify or copy this e-mail.
Please notify the sender immediately by e-mail, if you have received this
message by mistake and delete it from your system.</br>
<br>E-mail transmission may not be secure or error-free as information could be
intercepted, corrupted, lost, destroyed, arrive late or incomplete. Also
processing of incoming e-mails cannot be guaranteed. All liability of the
Vontobel Group and its affiliates for any damages resulting from e-mail use is
excluded. You are advised that urgent and time sensitive messages should not be
sent by e-mail and if verification is required please request a printed
version.<br/>
</p>
</body>
</html>
Other related posts: