What is happening in this plan

Hi Please take a look at the below query and its plan. The Step 9 in the Plan applies the condition (ebill.is_synced_to_orig = 0 OR ebill.is_synced_to_orig IS NULL). but since it is a index scan it only applies is_synced_to_orig = 0 condition. But ideally the other selectivity should also be considered somewhere else right. but I could not see that in the plan.
Is oracle skipping that condition?? much appreciate if someone can say what is happening in this plan for is_synced_to_orig IS NULL condition. thanks...
SELECT ebill.ebill_summary_id
FROM ebill_summary ebill INNER JOIN originator orig
ON ebill.originator_id = orig.originator_id
AND (ebill.is_synced_to_orig = 0 OR ebill.is_synced_to_orig IS NULL)
INNER JOIN entity e
ON e.entity_id = orig.entity_id
AND e.entity_type_id = 1
AND e.entity_id = 1
LEFT OUTER JOIN te_pmt_task_lock tl
ON tl.payment_request_id = ebill.ebill_summary_id
AND tl.te_task_id = 1234
AND tl.is_expired = 1
WHERE tl.payment_request_id IS NULL AND ROWNUM <= 1000;
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 56 | 16 (0)| 00:00:01 |
|* 1 | COUNT STOPKEY | | | | | |
|* 2 | FILTER | | | | | |
| 3 | NESTED LOOPS OUTER | | 1 | 56 | 16 (0)| 00:00:01 |
| 4 | NESTED LOOPS | | 1 | 47 | 2 (0)| 00:00:01 |
| 5 | NESTED LOOPS | | 1 | 43 | 1 (0)| 00:00:01 |
|* 6 | TABLE ACCESS BY INDEX ROWID| ENTITY | 1 | 4 | 1 (0)| 00:00:01 |
|* 7 | INDEX UNIQUE SCAN | ENTITIES_PK | 1 | | 0 (0)| 00:00:01 |
| 8 | TABLE ACCESS BY INDEX ROWID| EBILL_SUMMARY | 1 | 39 | 0 (0)| 00:00:01 |
|* 9 | INDEX RANGE SCAN | EBILL_IS_SYNCED_TO_ORIG_IDX | 1 | | 0 (0)| 00:00:01 |
|* 10 | TABLE ACCESS BY INDEX ROWID | ORIGINATOR | 1 | 4 | 1 (0)| 00:00:01 |
|* 11 | INDEX RANGE SCAN | ORIGINATOR_ENTITY_IDX | 1 | | 0 (0)| 00:00:01 |
|* 12 | INDEX RANGE SCAN | TEPMTTSKLCK_TSKEXPRDPYNREQ_ID | 1 | 9 | 14 (0)| 00:00:01 |
Predicate Information (identified by operation id):
1 - filter(ROWNUM<=1000)
2 - filter("TL"."PAYMENT_REQUEST_ID" IS NULL)
6 - filter("E"."ENTITY_TYPE_ID"=1)
7 - access("E"."ENTITY_ID"=1)
9 - access("EBILL"."IS_SYNCED_TO_ORIG"=0)
10 - filter("EBILL"."ORIGINATOR_ID"="ORIG"."ORIGINATOR_ID")
11 - access("ORIG"."ENTITY_ID"=1)
12 - access("TL"."TE_TASK_ID"(+)=1234 AND "TL"."IS_EXPIRED"(+)=1 AND
"TL"."PAYMENT_REQUEST_ID"(+)="EBILL"."EBILL_SUMMARY_ID")

Well, if the column is declared as NOT NULL and you ask for all rows such that the column = 1 OR it is null then really you are asking for all data where the column = 1 since by definition, there cannot be nulls (the NOT NULL constraint on the column prohibits NULL data from occurring).
Make sense?
Now, i'm not saying that's what your issue is, but since i haven't seen what your tables look like ... it's as good a guess as i can muster.

Similar Messages

  • TS1702 Any body know what is happening with this app "eTodo" ? is no more in the iTunes store !

    Any body know what is happening with this app "eTodo" ? is no more in the iTunes store !
    I have this problem for one year I think and no one can’t solve that,I made 6 screen shots and I will uploading in a few seconds all of them and please just check them !
    My problem is: I bought an application last year and after some time I had lost the app from my iTunes store.
    Now,what I want to do is: I want to get that app again,but I could not find anywhere in the iTunes  store,websites ,nobody could not help me with that
    The app has been deleted from everywhere !

    If the app is no longer in the store then you won't be able to redownload it. You don't have a copy of it in your computer's iTunes library or on your backup of your downloads/library so that you can sync it back to your phone ?

  • What is happening in this code

    Hello guys
    import java.util.*;
    public class nip{
         public static void main(String args[]){
              Random rn=new Random();
              int array1[]=new int[7];
              for(int counter=1;counter<50;counter++){
                   ++array1[1+rn.nextInt(3)];
    for(int face=1;face<array1.length;face++){
              System.out.println(array1[face]);
    System.out.println(1+rn.nextInt(6));
         }}its give me random 3 digit numbers
    How it's works
    Thank you guys

    Sorry guys
    It's like this
    import java.util.*;
    public class nip{
         public static void main(String args[]){
              Random rn=new Random();
              int array1[]=new int[7];
              for(int counter=1;counter<1000;counter++){
                   ++array1[1+rn.nextInt(6)];
    for(int face=1;face<array1.length;face++){
              System.out.println(array1[face]);
    i didn't understand
              for(int counter=1;counter<1000;counter++){
                   ++array1[1+rn.nextInt(6)];
         }what happen i this part

  • What will happen in this code.

    Hi all,
    Im trying to understand the execution path when an exception is raised. In this example, what will happen when testExcep is raised.
    1. Will the rollback take place?
    or
    2: Control will be passed to the calling procedure and thus nothing in the "WHEN OTHERS" clause will be executed.
    I thought that when in testExcep, the code will raise an exception which will be passed to the "When Others" clause. Someone please clarify this to me.
    Thanks
    WHEN testExcep
    THEN
    RAISE;
    WHEN OTHERS
    THEN
       ROLLBACK;
       write_batch_job_log('Oracle error: '||SQLERRM,
                           'Calc Inv Counts',
                           'F',
                           lv_start_date);
       COMMIT;
       RAISE;
    END calc_inv_qtr_counts;

    The Best this is to try it for yourself.
    This is how you can..
    Declare
    PROCEDURE my_test is
    textExcep Exception ;
    Begin
    DBMS_OUTPUT.PUT_LINE( 'In my test Proc Body') ;
    Raise textExcep ;
    Exception
    WHEN textExcep
    THEN
    DBMS_OUTPUT.PUT_LINE( 'passing call back to calling program') ;
    RAISE;
    WHEN OTHERS
    THEN
    ROLLBACK;
    DBMS_OUTPUT.PUT_LINE( 'Rolled back') ;
    COMMIT;
    DBMS_OUTPUT.PUT_LINE( 'Commit') ;
    RAISE;
    END;
    Begin
    my_test ;
    Exception
    When Others Then
    DBMS_OUTPUT.PUT_LINE( 'Main Block Error handler') ;
    End ;
    Declare
    PROCEDURE my_test is
    textExcep Exception ;
    Begin
    DBMS_OUTPUT.PUT_LINE( 'In my test Proc Body') ;
    Raise NO_DATA_FOUND;
    Exception
    WHEN textExcep
    THEN
    DBMS_OUTPUT.PUT_LINE( 'passing call back to calling program') ;
    RAISE;
    WHEN OTHERS
    THEN
    ROLLBACK;
    DBMS_OUTPUT.PUT_LINE( 'Rolled back') ;
    COMMIT;
    DBMS_OUTPUT.PUT_LINE( 'Commit') ;
    RAISE;
    END;
    Begin
    my_test ;
    Exception
    When Others Then
    DBMS_OUTPUT.PUT_LINE( 'Main Block Error handler') ;
    End ;
    /

  • What will happen after this?

    I have a procedure kicked off yesterday to update a table. But I killed it this morning. Just after I killed the session, I kicked off another SQL to perform the same task to update the same table and same columns but faster.
    What is happening right now is: the Oracle is performing a roll back on the killed procedure while the new SQL is running.
    So here are my questions:
    1. what will happen later when the SQL is completed and the roll back is not done yet?
    2. Will the roll back affect the new SQL updates?
    Thanks,
    Edited by: user644467 on Mar 11, 2011 9:37 AM

    Dive into the concepts manual. A basic concept of Oracle [url http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/consist.htm#CNCPT020]concurrency and consistency is that each (something) gets a view of the database at the start of the (something). (something) is usually a transaction or statement, depending on configuration and programming. Oracle uses System Change Numbers to figure out if each view should include any particular version of block data, kind of like a clock.
    So basically, it all works, but you may see performance impacts just because stuff is happening, and you may see odd effects if you don't understand what you are doing. It is different than other database engines.

  • What's Happening With This Media Hub?

    I have the NMH410 version 3.18.15 purchased over 1 month ago.  I'm using this hub as a storage device for my converted VHS video tapes.  Some strange things are happening:
    Files Listed and Not Listed:
     I've used  the Media Importer to load my converted VHS files onto the Media Hub and in some instances I see those files on the File Browser.  However, I do not see some of those same files when I go to select them from the Video icon on the Homepage.  Nor, do I find those files when I use the search tool.
    Conversely, I see some video files from the Homepage icon that do not appear on the File Browser list.  Yet, I know I uploaded those files at an earlier date.
    I've used the "Scan" and "Refresh" buttons to no avail.  What could be causing these two file problems?  
    What do the following messages mean?
    Transferring data from "Media Hub name"?
    Waiting for "Media Hub name"?
    These two messages reside on the lower left side of my task bar.  My cursor also appears to cycle through some sort of purge process.  
    Finally, is there a User Guide that can help me with many of the questions I still have concerning this product?  Or, are we left to submitting these questions and hoping someone has a timely answer that is easily and rationally understood
    Thanks
    dutch184. 

    Thanks Mared1784 for taking the time to share your experience with me.  But there is no way that I can "backup" almost 290GB of files to reformat the Media Hub drives.  Plus, there is no guarantee that these same conditions will not happen again.  
    I have noticed that this condition (files listed on the file browser, but not accessible from the homepage or search engine), began with files loaded after November 12th.  It seems to me that if the files are on the Media Hub (file browser) then I should be able to see and access them from anywhere within the Media Hub.
    This tells me there is either a development or programming glitch that needs to have a fix made available through another firmware update.  No one should have to go through the gymnastics you went through in order to correct the problem.
    I appreciate you sharing your experience and suggestions with me.
    Thanks
    dutch184 

  • Can anyone explain what is happening in this example?

    Take a look at the following bit of CFML:
    <!---\\ This is a coldfusion comment \\--->
    <cfif false>
              <cfsavecontent variable="Test">
                        <?xml version="1.0" encoding="utf-16"?>
              </cfsavecontent>
    </cfif>
    <!---\\ Some other coldfusion code \\--->
    <cfset Foo = 'Hello '>
    <cfset Bar = 'World'>
    <cfset FooBar = Foo & Bar>
    Seems like some simple test code right? Shouldn't generate any output at all right? Now take that sample and go run it. Are you staring at a jumble of oddly encoded characters that basically contain all of the unprocessed CFML code on the page? Because that's exactly what I'm looking at.
    It's the craziest thing! The root issue is the "utf-16" attribute of the XML declaration. If you remove that or change it to something like "utf-8", everything is fine. The points that really muddle my brain are:
    The XML declaration is inside a "cfsavecontent" tag so it should just be a string
    The "cfsavecontent" should not even be evaluated because it's inside of a "cfif" that's hard-coded to false
    My coworker came across this while trying to save some XML as a string so he could write it to a file later. It really seems like a crazy bug to me but I'd like to hear what others think is going on here. For your info, we're running CF9 standard on a Win2k8 R2 system.

    The only thing I can think is that the file itself is saved with UTF-16 encoding, and the CF compiler is baulking at that. That said, I emulated this on my PC and my CF install (same as Duncan's, we work in the same office) dealt with it just fine.
    If the file is saved in any sort of non-ANSI encoding, you will need a <cfprocessingdirective> at the top of the file to tell the CF compiler how to read the file.
    Adam

  • Having the same problem with Aol not sending my mail and getting error message. If I delete this account, what will happen? This is on my iPad, and I also have a gmail and Yahoo account.

    This happened after I was hacked.

    If you delete that account from your iPad, all messages from it will be removed. You can then go back into Settings, then Mail, Contacts, Calendars and 'Add Account' to add it back onto your iPad.

  • What's happen with this JDBC driver?

    Hi I have just started with JDBC, and I follow the steps from the Mysql drivers, but always receive the same error:
    java.sql.SQLException: No suitable driver
    at java.sql.DriverManager.getConnection(DriverManager.java:532)
    at java.sql.DriverManager.getConnection(DriverManager.java:193)
    at Connect.main(Connect.java:16)
    My program is the following:
    import java.sql.*;
    public class Connect {
    public static void main(String arg[]) throws Exception {
    Connection con = null;
    try {
    // here is the JDBC URL for this database
    // more on what the Statement and ResultSet classes do later
    Statement stmt;
    ResultSet rs;
    // either pass this as a property, i.e.
    // -Djdbc.drivers=org.gjt.mm.mysql.Driver
    // or load it here as we are doing in this example
    // here is where the connection is made
    con = DriverManager.getConnection("jdbc:mysql://arturo.flexdns.net:3306/arturo?user=root&password=arturo.mc.laa");
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    catch( SQLException e ) {
    e.printStackTrace( );
    finally {
    if( con != null ) {
    try { con.close(  ); }
    catch( Exception e ) { }
    Does anyone known why, What am I doing wrong?
    Thank's very much in advance.

    Hi,
    I think you were right, but now I have got the following erro message, I have put everything in the PATH:
    Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:198)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:140)
    at Connect.main(Connect.java:16)

  • What is happening in this CC thing?

    This is starting to turn into the complete fiasco I have been dreading.
    Not only do half the applications in CC 2014 fail to install properly but I am also concerned about the multiple stacked versions it seems to be installing.
    I fail to understand the whole process, and in all honesty am totally fed up wth the whole shooting match.
    Here's a summary of the problems - and I will go into exhaustive detail if needs be:
    1 - No install discs any longer - utterly reliant on flaky internet connections.
    2 - Nothing ever seems to get removed, and the system seems to be getting very, very cluttered with multiple installs - as well as all the failed installations.
    3 - This workstation has been "updating" now since 10 AM this morning, it is now 9 and a half hours later & I am still not done.
    The whole CC model is frankly a complete disaster, and a total screwup. For the love of all that is holy please bring back proper, replicated media otherwise this years subscription will be my last one ever after working with Adobe since 2000.
    I've always been worried about this model, and every single concern I raised years ago is coming home to bite me in the ***.
    At this rate, I will cancel my subsctription & revert back to the CS6 suite - at least it can get installed properly and not take all damned day to do it - and at the end of it all, still fail.
    It's a bad joke, and the joke is sadly oin everyone who like me is paying close to £50 per month for this.

    http://blogs.adobe.com/jkost/2014/06/installing-the-2014-release-of-creative-cloud.html
    -This messages says (at least some) CC 2014 programs use NEW plugins https://forums.adobe.com/thread/1499663
    -so do not uninstall the older CC programs if you use plugins in your programs until you are sure you have plugins that work in CC2014
    If you are sure you don't need the old CC programs
    -http://helpx.adobe.com/creative-cloud/help/install-apps.html to install or uninstall

  • What would happen if this runs?

    This is a 'real' code example that i found in this program. Could this cause connection pools to not be relased
    Connection con = null;
    stmt = con.createStatement();
    int ret = stmt.executeUpdate(simple query);
    con.commit();
    con.rollback();
    con.commit();
    con.close

    Connection con = null;
    stmt = con.createStatement();You will get a NullPointerException here. :P
    If we assume that you are getting a Connection from a DataSource...
    int ret = stmt.executeUpdate(simple query);
    con.commit();This should commit the updates (even if the auto-commit mode is set to false). It releases all the previous savepoints as well.
    con.rollback();This won't have any effect.
    con.commit();Neither would this.
    con.close();If all this code is in one block, there is no guarantee that the connection will be closed. This should be in a finally block preferably. :)

  • I am trying to load magazines from the book store to the bookshelf but am getting "an error occurred"  what is happening? This is an iPad 3wi fi

    I have an iPad 3 wifi model. I am trying to place magazines from the book store on the bookshelf app but continue to get the message " an error has occurred". HELP!  Thanks

    You can not load magazines to the bookshelf.  Some magazines go there automatically and can not be placed elsewhere.  Other magazines do not go there and can not be moved there.  It all depends on the relationship between the publisher and Apple.

  • What is happening on this forum,sdn.sap

    Hi,
    why some of my questions are removed by stupid Rob Burbank.
    the only one who removes questions is stupid rob, i think.

    > PS - stupid huh: Re: Read dataset problem
    Just a little tweak here to share a tip with the gurus: The authorization checks for dataset operations are not voluntary. They are performed (again) by the kernel when the ABAP statements are used and you cannot "workaround" them nor debug them either.
    So... before the OPEN DATASET, you should call FM AUTHORITY_CHECK_DATASET to verify that the user's program context and the path hook is authorized for the action, and then either react to it or continue if okay Otherwise it short dumps anyway.
    There is a little gem in there to make your life easier as well, but we don't want to bore Dilek with such skills of the craft now do we...
    Cheers,
    Julius

  • My firefox wont load any page. Says it cant find the server of any of them. I can view the same pages in safari. I just updated to 3.6.7 and now having this problem. What is happening?

    My firefox wont load any page. Says it cant find the server of any of them. I can view the same pages in safari. I just updated to 3.6.7 and now having this problem. What is happening?
    == This happened ==
    Every time Firefox opened
    == Today ==
    == User Agent ==
    Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16

    Read this somewhere else: Can't find it again so can't reference - apols.
    fixed by entering
    about:config into the nav bar
    toggle dom.storage.enabled to 'true'
    worked for me - but don't know what it does or why :)

  • HT204490 I have a black screen on powering up after installing this update.  My computer screen is black for at least 30 or so seconds now when powering up.  Never had this before.  What has happened?

    What has happened since this update.  I did install the so called fix a few days ago, but no better/

    Follow these instructions:
    https://support.apple.com/en-us/HT204417
    Ciao.

Maybe you are looking for

  • Sales documents type - sales to employees

    Hi Experts, I am working on sales to employees scenario. I want to create sales document type for these sales. Scenario would be employees buy products from factory shop and pay for the products in cash and take them away immediately. What aspects sh

  • Size in table

    Hi, is Null value in table column will occupied some space in database? how to calculate the size of the column occupied

  • I am trying to cut invoice but unable to do so due to there is no confirmed

    I am trying to cut invoice but unable to do so due to there is no confirmed quantity in the sales order even though SFD is on 04-May & goods are ready for shipment. what could be the issue? any one can help me? urgent thanks

  • Photo box anomaly?

    I was reworking a book and suddenly the image didn't fill the photo box in the same way it did a few weeks ago ~ Nov 15th 2011. I experimented a bit and found the following Given an image that does fill the box, with the box alignment set to "scale t

  • XMP metadata is lost while updating XMP using Exempi on linux

    Hello, I'm using the library XMPFiles for Linux (Exempi) to update XMP metadata of a tiff file. As a result RichTiffIPTC Tag is being removed and Photoshop tag was changed (2 photoshop image resources are also being removed : IPTC metadata (ID=1028)