SQL Dev result fetch performance

I am using SQL Developer 1.2.0-Main 29.98
My dept. is looking to save the cost of TOAD renewal, but evaluators have raised the following issue:
Using a test query in both TOAD and SQL Developer, it takes 2x longer in SQL Dev to retrieve all rows (7864). Both tools return n first rows quickly, but using CTRL-A in SQL Dev to force the worksheet to display all the rows takes 88sec. with Sql Array Fetch Size=50, improving incrementally to a fastest 64 sec. with the Size = 5000. (It also lets me set the size even larger, even though the documentation says 5000 is the max, no improvement in performance though.) TOAD, using it's minimum memory threshhold method returns the data in 32 sec.
Are there any additional configuration changes I can make? I am a DBA, not a Java developer, so I have no knowledge of memory settings, etc. that can be defined for the Java environment.
I have seen in other threads that 2.0 is under development, is this performance issue already being addressed?
Any and all advice is appreciated, otherwise it's back to evaluating PL/SQL Developer.

If you want performance and no hassle, stick with the proven, robust TOAD. Period. The rest can be called wannabees.
Sqldev is still too young, has performance issues, crashes, has bugs, uses a lot of mem, ... but promises to be really competitive with TOAD in the future.
I do prefer sqldev's code editor and debugger over TOAD's and has a modern Java interface, easy customizable through user extensions in XML, and most important: it's Oracle and free. But you do need to put in a lot of patience and frustration...
Regards,
K.

Similar Messages

  • SQL Dev 2.1 - Performance Problem Filtering Users

    Hi, we commonly want to apply a filter to our "Other Users" section in the connection window. We usually use where object count > 0 or >= 1. It appears to result in a query that looks like this:
    <pre>
    SELECT *
    FROM (SELECT username
    FROM sys.all_users au
    WHERE au.username != USER)
    WHERE (SELECT COUNT (1)
    FROM all_objects
    WHERE username = owner) >=1
    </pre>
    On our system, it is running for well over 3 minutes (sometimes 20 minutes). We have 2,400 rows in ALL_USERS and ALL_OBJECTS has 226,271 rows. The same roughly the same for DBA_* views as well.
    Could the query that is generated be rewritten to be more like this?
    <pre>
    select *
    from
    (select username
    from sys.all_users au
    where au.username != USER)
    where
    username in (select owner
    from all_objects
    group by owner
    having count(*) > 1)
    </pre>
    That query runs in less than 10 seconds on the same system and appears to be safe for any older versions of Oracle as well.
    I realize that many systems don't have that many objects so maybe this is helpful feedback...

    Yes - the SQL for these internal queries are located in XML files, which you can modify - although, this means you are accepting the risks and consequences of getting it wrong. The XML file you want is oracle\dbtools\raptor\navigator\oracle\schema.xml which is in <SQL Developer Home>\sqldeveloper\extensions\oracle.sqldeveloper.jar (you need to extract it from the jar, modify it and then put it back in the jar). Unfortunately, I don't know enough about the structure of the filter components of the XML to know if you can get a filter that does the query you want.
    theFurryOne

  • Cancelling Query Results in Continually Busy Connection -- SQL Dev 2.1 EA2

    Hello All --
    I am running SQL Developer 2.1 EA2 on the Windows 7 Release Candidate (64-bit). I have had issues when canceling long-running queries. Usually what happens is I run something, and realize after a couple of minutes that it's going to take quite a while to run. So, I click the cancel button. Things seem OK, I can resume editing the query. However, when I try to re-run the query (after modifying it) or even just to run an explain plan, I find that I can't re-connect to the DB. I go to the connection pane to try to disconnect and reconnect to the server in question, but when I try to disconnect I keep getting error messages about the connection still being busy, would I like to Retry or Abort? I can keep clicking either of the options ad infinitum with no results.
    I have to kill SQL Developer from Task Manager and re-start. I am connecting for the most part to Oracle 10.2.0.4 databases (10g2), some RAC, some stand-alone.
    EA2's behavior is better than SQL DEV 1.5.x, which would simply often lock, but this is still frustrating.
    Thanks!

    This definitely occurs in 1.5.5 - in my particular case, and this is really strange, if one uses Task Manager to shut down SQLDeveloper because it is just taking forever to get a Data view (via the + expand sign on the side of a given admittedly big table, then clicking on the Data tab), SQLDeveloper freezes. Even if I start a new instance of SQLDeveloper, and ask for a Data view again, it freezes - I've waited as much as 1/2 hour, where as in prior days I'd get a response within say 1 min.
    I've even uninstalled and re-installed. Same deal. This is what's the strangest by far. How can it be that SQLDeveloper remembers that a long running query was once canceled even after an uninstall / reinstall ? I could not find anything remotely related to this in the Registry after the uninstall either.
    [By the way, if on the other hand, I say SELECT * FROM {table_name}, I get an instant response !]

  • SQL Dev 2.1:Ability to save and load visual query models?

    At SQL Dev 2.1, do we now have the ability to save and load visual query models as with TOAD? Or has that functionality been rolled into the for-pay Data Modeler extension? Seemed strange to hide the functionality deep within SQL Worksheet, then not allow query models to be saved or loaded. From what I recall, load/save was scheduled to be in 2.0.
    I've not yet downloaded and installed 2.1, but also as I recall, it was promised to be a significant (e.g. new-feature rich) release. Has it lived up to that promise? Hoping also that it's not so buggy as to not merit an upgrade. At my workplace, folks have different versions of SQL Dev 1.X installed, each for the purpose of retaining functionality that got broken in future releases, etc. Would love to be able to advise them to retire their 1.X installs in favor of 2.1.
    Edited by: Dana N on Jan 21, 2010 6:45 AM

    Dana, We are working on the query builder. We have not done anything with it in recent releases as we knew that it needed completely overhauled and a
    couple of bug fixes were not going to give us the query builder we needed. Sue will be able to tell you more as the we get closer to releasing it as a feature.Thanks Barry. I know it's probably impossible to give firm dates, but my colleagues would love to know, ballpark, when query builder might be ready. Any particular year/quarter that's targeted for?
    A lot of the bugs in the 2.1 are probably my fault as we decided to build a framework which allowed tasks to be scheduled like eclipse and push them to the
    background. Coupled with this, we tore apart the worksheet to allow us to fit tasks in, but to also give us the ability to do some of the enhancement requests
    that you guys, our users, have been asking for. While its not perfect, I believe its getting much better from both a functionality and performance standpoint. The
    worksheet will not change again and there are no enhancements logged or scheduled which will do that. The issues that have come as part of 2.1 are being
    addressed and we are fixing the highest priority ones as we speak. One of my priorities is to make these components as rock solid as possible.Thanks again. It really is a nice tool to work with, and I'm grateful to have it. I would choose stability for existing features over new ones, but I suppose there always has to be a balance in development. What was really scary in the past was getting bizarre / wrong answers in query results--that's a complete show stopper; e.g. clicking on a row/col intersection in a result set row would show strange and false values. New features can wait, but core functionality must be solid. If one can't presume integrity of query results, it's game over--using a version of SQL Developer that returns inconsistent result sets between runs could be Considered Harmful, or so it is to me.
    Anyway, thanks for responding and I hope Oracle Corp gets you whatever assistance you need to improve the quality of existing functionality while adding new features; with one not being at the expense of the other. :-) Glad also to see Sue has authored a book on the tool. Hopefully that will drive customer demand and force increased allocation of development resources toward the product. I'd like to think having out-of-the-box tools that are a joy to use might even increase market share.
    Data Modeler I would love to use, but am completely priced out of it. Enterprise Architect from Sparx Systems is the best value there so far as I can tell.
    Dana

  • 3.1EA2: Automatic refreshing of report brings SQL Dev to front

    Hallo Forum,
    today I stumbled upon some strage behaviour of SQL Developer 3.1.06.44.
    I have created a report which is actually just a select count(*) from... with some parameter. When I call the report I'm asked for the parameter and presented the result.
    So far so good. But when I now set the auto refresh to 30s, SQL Developer jumps to front every 30s or at least tries to do so indicating that by blinking task bar icon.
    I think the application should not push around the input focus while refreshing a report. If it's in the background it should stay there and silently refresh its window.
    I use SQL Dev 64bit und Windows 7 64bit with JDK 1.6.0_29 and am connecting to Oracle 11.2.0.2.0 64bit on Windows 2008R2 64bit.
    Edited by: dhalek on 28.11.2011 03:03

    Thank you, Phil.
    This worked for me in my quick test case.
    Great help, as DBA group wants to allow NON-privileged users (like Developers and QA) to execute ADDM on demand.
    Here is my observation for RAC database with two instances.
    I have followed your instructions:
    "Performance / Automatic Database Diagnostic Monitor -> Run ADDM"
    Then
    - Uncheck box "By Creating New Snapshot" (this box was checked by default)
    - Provide new "Task Name" (let's say "vr1")
    - Select "Start Snapshot" (this is where my first confusion is: each screen shot # is shown twice, may be because i have two instances of RAC)
    - Select "End Snapshot" (the same way: each SNAP_ID is shown twice)
    - and finally APPLY button is pressed
    This creates 3 reports:
    vr1
    vr1$1 (for instance_id=1)
    vr1$2 (for instance_id=2_
    So, my question is: this expected and normal behavior of the tool?
    What if my RAC database has 8 instances? Then I would generate 9 separate ADDM reports?
    Is this correct observation?
    Thank you,
    vr

  • ADDM Report is not produced by SQL DEV 4.0 if logged in user does not have SYSDBA privilege

    Hello -
    In SQLDEV 4.0 (Early Adapter), I logged in as user with no SYSDBA privilege granted. But ADVISOR granted and  execute on DBMS_ADDM granted and "select any dictionary" granted, etc.
    Then i go to the menu View --> DBA --> Performance --> Automatic Database Diagnostic Monitor
    Select ADDM report from the available choices.
    Out of 3 menu options: Summary, Findings and ADDM Report, I can see the first two, but I am getting a grey screen for ADDM Report.
    ^^^^^^^^^^^^^^^^^^^^^
    If i do exactly the same but login as SYSDBA, then ADDM Report can be produced and can be seen. So the issue is in the missing grants and privileges.
    ^^^^^^^^^^^^^^^^^^^^^^
    The goal that we are pursuing in our shop is to empower developers to work with ADDM reports by having them login as non-SYSDBA user.
    ^^^^^^^^^^^^^^^^^^^^^^^^
    Please advise what privilege should be granted to get this working for non-SYSDBA login
    The same user can successfully execute $ORACLE_HOME/rdbms/admin/addmrpt.sql and produce file with complete ADDM report. But not able to get the ADDM from SQL DEV 4.0
    Thank you,
    vr

    Thank you, Phil.
    This worked for me in my quick test case.
    Great help, as DBA group wants to allow NON-privileged users (like Developers and QA) to execute ADDM on demand.
    Here is my observation for RAC database with two instances.
    I have followed your instructions:
    "Performance / Automatic Database Diagnostic Monitor -> Run ADDM"
    Then
    - Uncheck box "By Creating New Snapshot" (this box was checked by default)
    - Provide new "Task Name" (let's say "vr1")
    - Select "Start Snapshot" (this is where my first confusion is: each screen shot # is shown twice, may be because i have two instances of RAC)
    - Select "End Snapshot" (the same way: each SNAP_ID is shown twice)
    - and finally APPLY button is pressed
    This creates 3 reports:
    vr1
    vr1$1 (for instance_id=1)
    vr1$2 (for instance_id=2_
    So, my question is: this expected and normal behavior of the tool?
    What if my RAC database has 8 instances? Then I would generate 9 separate ADDM reports?
    Is this correct observation?
    Thank you,
    vr

  • PL/SQL Function Result Cache?

    Hi all,
    As we know, there's a new feature in 11g, called 'result cache', this 'result cache' can be shared throughout the whole instance, but if I got it right, only sql query result and function return value are cached, right? how about the store procedure, I mean, procedure also has its 'return value'--the output parameter, could it benefit from this new feature?
    Another question is, if my PL/SQL Function just retrieves the table and returns the result without any complicated calculation, is it necessary to enable the 'result cache' mechanism on this Function? because we already have 'db buffer cache' if the only thing we do is to query tables.
    Many thanks.

    Hi Morven,
    As of now, PL/SQL Result cache feature is only enabled for stored functions and not for procedures. This is due to the objectives they achieve. Functions are usually computative and procedures are for logic implementation.
    And for enabling result caching feature for a function, you are the better judge as u can test the performance in both the case. But, i would support enabling the cache because oracle 11g provides Cache as a different SGA component. db_buffer_cache will also be used for buffering other data blocks and not the result sets.
    Hope my explanation is fine.

  • I can compile objects with SQL dev tool but not with a direct sql

    hi,
    This is a bit weird - I'm probably not familiar enough with Oracle's compilation process...
    I'm creating a some functions / procedures / triggers. When I run the script to create them with Oracle's SQL Developer tool, usually they become immediately valid, and if not then I can manually right click them and choose Compile, and they're compiled correctly and become valid.
    However, when running them with command line tools, they're uncompiled after created. I'm trying compile them with
    ALTER PROCEDURE / FUNCTION / TRIGGER MySchema.MyFunction COMPILE;
    and it always returns
    Error starting at line 1 in command:
    alter function MySchema.MyFunction compile
    Error report:
    SQL Command: alter function
    Failed: Warning: execution completed with warning
    alter function MySchema.MyFunction succeeded.
    and the object remains uncompiled / invalid.
    also tried with DBMS_... utils and got the same results.
    Same with adding things such as PLSQL_WARNINGS = 'ERROR:ALL' to the stmt
    But when I go in SQL Developer to the object, right click and click Compile, it compiles fine w/o warnings / errors and becomes valid.
    Is there anything else I should run other than this alter..compile? Is SQL Dev tool doing something different than "alter function ... compile" when right clicking and object and clicking "Compile"?
    thanks!

    hi,
    I'm having difficulties connecting with SQL Plus, since it seem to require at startup some admin user/password, which I don't have at the moment. Also tried to give it in command line the db name and params and it still require this pass... Will try to get it...
    But again, when I'm right clicking the object in SQL Developer and click Compile, it compiles fine and becomes valid. After doing that, running
    alter function mySchema.MyTestFunction compile;
    passes with
    "alter function mySchema.testfunction succeeded"
    If I run this sql before doing compile with SQL Developer, it fails with what I posted before.
    I wonder if SQL Developer does things other than the above compile stmt.
    If I right click on Functions in SQL Dev and click Compile All or Compile Invalid, I can see the sql it about to generate, and it's the same as I tried - and fails as well... Only when right clicking the object and Compile it works...
    A test func I tried, for example:
    create or replace
    FUNCTION testFunction(n in number)
    RETURN NUMBER
    IS
    BEGIN
    RETURN n + 1;
    END;

  • Xamp server on oracle sql dev

    Hi,
    I would like to know how to configure oracle sql dev database connection on xamp server?
    I tried the following:
    connection name: Xamp
    username: root@localhost
    Password: (blank)
    connection type: basic
    port: 1521
    SID: xe
    results:
    Status: failure-Test failed: IO Error: The network adapter could not establish the connection
    Can someone help?

    I am quite new to oracle
    can you detailed some steps where I can use oracle sql dev to practise some queries (where can I get the tables ready made) ?

  • Allow Custom Font Settings on SQL Dev

    Hi,
    Well this is just simply a polite bump on my request.
    I had posted on the forum about setting font on various SQL Dev component more that two years ago.
    2.1.1 UI : Inconsistency Fonts setting on SQL Dev
    And put on Exchange here :
    https://apex.oracle.com/pls/apex/f?p=43135:7:242850196580001::NO:RP,7:P7_ID:23701
    Well, to be honest, it seems although each released of SQL Dev introduced new feature, many of the users requested features on Exchange are simply neglected.
    Quite sad though, as the Exchange should be considered as the main customers wish to see on the next version.
    I just curious to know which any of the top 20 of the request marked as implemented on this SQL Dev 3.2?
    Even for this request status is Open for more than two years, and not even a single comment from the team.
    Perhaps they don't even care to read the Exchange though.
    And this new 3.2 coming out without early adopter release as it used to be.
    Well, for the bugs (or missed bugs) I've seen from some of the posts here, would simply have to wait another 6 months from now.
    What a waste....
    What I've seen is this long cycle issue has caused lots of retiring 'used-to-be-active' users.
    To put on weight for my request,
    Isn't it funny that you cannot distinguish the query result grid between 'Oracle' and '0racle' from this 0racle's tool (or was it Oracle's)?
    Regards,
    Buntoro

    Hi,
    In User Interface perspective, mostly stands for, What You See Is What You Get (WYSIWYG).
    Maybe that's what Sven's referring to, and that's one of the reason I started this thread.
    Let's just wait for the team to decide the broad range of Font settings which are customizable, perhaps including Edit dialog as one of the customizable. And let the forums to give their opinion.
    Regards,
    Buntoro

  • SQL Dev anomolies

    SQL Dev 3.2.20.09
    Windows 7 Pro.
    I just installad SQL Dev on a power user's workstation and discovered a couple of things
    1) - The tables and views folders in the navigation pane return nothing. If the same user connects with sqlplus and selects from ALL_TABLES and ALL_VIEWS, he gets the expected result.
    2) - Well, now I am losing my mind ... I'll leave point #2 for later.

    Jeff Smith SQLDev PM wrote:
    The tables and views are filtered by your logon user.
    ALL_TABLES and ALL_VIEWS show every view and table in the database.
    Well, not every table/view in the database, just those the connected user has been granted access to. (ALL_TABLES vs. DBA_TABLES).
    You have to navigate down the connection tree to the 'Other Users' node, expand, and pull up your objects by owner/schema/user.
    Ah. You may dope slap me on this one. Of course ... the results under the navigation tree are going to default to USER_TABLES, not ALL_TABLES.
    For point #2 - this is normal :)And getting more normal with frightening regularity .. for me, anyway!
    Edited by: EdStevens on Nov 19, 2012 1:08 PM

  • Sql query to fetch session id

    Hi,
    I am to trying to fetch session id of a previously submitted process of a search button......so that i can display the search results in a different page.....so is there any sql query or pl/sql procedure to fetch the session id.

    >
    Please update your forum profile with a real handle instead of "968337".
    I am to trying to fetch session id of a previously submitted process of a search button......It's not all clear what you are trying to do. The documentation describes an APEX session and its ID thus:
    >
    A session is a logical construct that establishes persistence (or stateful behavior) across page views. Each session is assigned a unique identifier. The Application Express engine uses this identifier (or session ID) to store and retrieve an application's working set of data (or session state) before and after each page view.
    >
    This means that each page view and page submission does not have its own session ID, but uses the session ID established when the user's current session began (which is usually through logon and authentication).
    Given this definition of session and session ID, are you therefore referring to the ID of some previous user session in which a page was submitted by a search button? Or some private meaning that you have yet to fully explain?
    so that i can display the search results in a different page.....so is there any sql query or pl/sql procedure to fetch the session id.The session ID of the current session is available using the the built-in substitution string<tt>APP_SESSION</tt> built-in substitution string.
    When you have a problem you'll get a faster, more effective response by including as much relevant information as possible upfront. This should include:
    <li>Full APEX version
    <li>Full DB/version/edition/host OS
    <li>Web server architecture (EPG, OHS or APEX listener/host OS)
    <li>Browser(s) and version(s) used
    <li>Theme
    <li>Template(s)
    <li>Region/item type(s) (making particular distinction as to whether a "report" is a standard report, an interactive report, or in fact an "updateable report" (i.e. a tabular form)
    Following the guidelines in these documents will also help to explain the problem in much more detail and with sufficient background for it to be understood:
    <li>+How to ask questions+
    <li>+{message:id=9360002}+
    With APEX we're also fortunate to have a great resource in apex.oracle.com where we can reproduce and share problems. Reproducing things there is the best way to troubleshoot most issues, especially those relating to layout and visual formatting. If you expect a detailed answer then it's appropriate for you to take on a significant part of the effort by getting as far as possible with an example of the problem on apex.oracle.com before asking for assistance with specific issues, which we can then see at first hand.

  • SQL Dev 1.5.3 Data Grid showing incorrect data

    After upgrading to SQL Dev 1.5.3, I have seen instances of incorrect data displayed in the data grid (when displaying many records at a time), both in the Table Browser and in SQL Worksheet.
    For example, in the grid, it shows a value 1234 for a column. Now when I query just that row, the correct results are shown.
    Has anyone noticed this?
    Thanks,
    Manish

    Any updates on this? I am hitting this bug and it makes life very uncomfortable as I cannot trust the results.
    SQL Developer 1.5.3 + JDK 1.6.11 on Windows XP.

  • Diff b/w Run time Analyizer(se30),Sql Trace (st05) and Performance Analyzie

    Can any one tell me the Diff b/w Run time Analyizer(se30),Sql Trace (st05) and Performance Analyzie(al21) ?

    Hi
    these all are doing t he same thing that is checking the program for better performance
    Tools for Performance Analysis
    Run time analysis transaction SE30
    SQL Trace transaction ST05
    Extended Program Check (SLIN)
    Code Inspector ( SCI)
    Run time analysis transaction SE30 :This transaction gives all the analysis of an ABAP program with respect to the database and the non-database processing. 
    SQL Trace transaction ST05: The trace list has many lines that are not related to the SELECT statement in the ABAP program. This is because the execution of any ABAP program requires additional administrative SQL calls. To restrict the list output, use the filter introducing the trace list.
    The trace list contains different SQL statements simultaneously related to the one SELECT statement in the ABAP program. This is because the R/3 Database Interface - a sophisticated component of the R/3 Application Server - maps every Open SQL statement to one or a series of physical database calls and brings it to execution. This mapping, crucial to R/3s performance, depends on the particular call and database system. For example, the SELECT-ENDSELECT loop on a particular database table of the ABAP program would be mapped to a sequence PREPARE-OPEN-FETCH of physical calls in an Oracle environment.
    The WHERE clause in the trace list's SQL statement is different from the WHERE clause in the ABAP statement. This is because in an R/3 system, a client is a self-contained unit with separate master records and its own set of table data (in commercial, organizational, and technical terms). With ABAP, every Open SQL statement automatically executes within the correct client environment. For this reason, a condition with the actual client code is added to every WHERE clause if a client field is a component of the searched table.
    To see a statement's execution plan, just position the cursor on the PREPARE statement and choose Explain SQL. A detailed explanation of the execution plan depends on the database system in use.
    Extended Program Check
    This can be called in through transaction SE38 or through transaction SLIN. This indicates possible problems that may cause performance problems.
    Code Inspector (SCI)
    You can call the Code Inspector from the ABAP Editor (SE38), the Function Builder (SE37), the Class Builder (SE24), or as a separate transaction (SCI).
    The Code Inspector indicates possible problems. However, note that, especially with performance issues: There is no rule without exception. If a program passes an inspection, it does not necessarily mean that this program will have no performance problems.
    reward if usefull

  • Is there a way to create SQL Dev reports with validated binds?

    Is there a way to create SQL Dev reports with validated binds similar to the way user defined extensions can have <prompts> with a <value> that is a SQL statement returning a list of possible values?
    This sure would make select appropriate values for binds in reports easier and less error prone.

    Maybe a forum search on "Windows registry" would turn up some useful things. You're not the first to ask this. You might save yourself and everyone else some time if you'd simply do that.

Maybe you are looking for