SQL Developer 3.0 Unit Test

Hi all,
I'm hoping that one of you very knowledgeable individuals may be able to assist me!
I'm an APEX developer, and I'm trying to make use of Hudson (www.hudson-ci.org) to automate my build process. I can successfully check files out of a source control repository and run them on my database, but I'm falling down when I try to use SQL Developer 3.0 from the command line to execute some unit tests.
My test environment is a Windows XP SP3 machine running an 11g DB, APEX 4.1 and SQL Developer 3.0. In SQL Developer, I've set up a connection called APPHOME and currently, my unit test repository is on the same connection. If I open a command prompt and execute:
C:\sqldeveloper\bin>ututil -run -suite -name TEST_PROCEDURE_SUITE -repo APPHOME -db APPHOME -log 1
It works fine. The suite of tests execute OK, I get UT_SUCCESS back and when I look in SQL Developer, the result is there.
However, if in a Hudson project I include an instruction that tries to fire exactly the same command, I get a response of: "Connection not found: APPHOME".
Do I need to do anything special to ensure that ututil will be able to see the connection? The only thing that I can think of is that when I execute ututil from the command line, it does so as the logged in user (me, and I'm the one who has created the connections in SQL Developer) whereas when its fired by Hudson, it is executing as some other user that doesn't have my connections?
Does anybody have any thoughts about this?
Thanks in advance!
Nick

Hi Nick,
I think your diagnosis is correct i.e. the connections are specific to your user. To resolve, you can try logging onto the Hudson server as the user that will run ututil, run up sqldeveloper client and import the connections into that user.
I hope this helps.
Philip Richens
SQLDEV Development Team

Similar Messages

  • SQL Developer 3.0 Unit Testing

    Hi folks,
    Firstly, let me say thanks for all the hard work that has gone into the improvements made in SQL Developer 3.0. I've been trailing EA3 for the past few days, and am so far very impressed.
    My development team are particularly interested in the improvements made to the Unit Test module. We have previously created a number of tests/test suites in 2.1, but when we select to connect to the old test case repository schema, 3.0 tells me that it can not find the repository. (Apologises, I do not have my development box in front of me, so I can't quote the exact message).
    Is there anything I can do to get it to recognise the old repository? I'd prefer not to have to recreate all of our existing tests...
    Thanks in advance,
    Nick

    Hi Mikka,
    Only simple PL/SQL Records are currently supported i.e. those that do not contain repeating or optional components and where all the components are themselves supported. This restriction is in place due to the fact that we use JDBC as the parameter passing mechanism which does not directly support the PL/SQL Record type.
    ANYTYPE and ANYDATA are not currently supported as they have a dynamic value type and therefore must be programmatically set. In the future, it may be possible to support these through the dynamic value and and validation features.
    This will remain so for the final version.
    Regards,
    Richard

  • SQL Developer 3 EA1: Unit test

    Hi,
    I just started using the unit test frame work in SQL Developer 3 EA 1 and I need some help defining a test case involving parent - child tables that are manipulated using a plsql API. The API for the child table requires the key of a record in the parent table. The parent record, and its key, is created by a test case startup process. The key is retrieved using a dynamic value query in the test implementation. It appears the dynamic value query is executed before the test case startup processes have been executed. Is this expected behaviour? My expectation is the startup processes are executed before the dynamic values query.
    Also, is it possible to use values from the startup processes as parameter values of the test case other than using a dynamic value query?
    Test case summary:
    2 Startup processes: The first deletes all data from parent and child tables. The second inserts in a record into the parent table.
    Zero Teardown processes.
    Test implementation: Dynamic value query that selects the key from the parent table and defines literals for the remaining parameters of the test case.
    1 Process validation: Test whether a record has been inserted into the childe table with the expected values.
    Thanks
    Alistair

    Hi Alistair -
    We execute the dynamic query to control how many times the test (start up, test case, validation, tear down) cycle executes.
    To get the behavior you want, put the test in a test suite and have the test suite start up do the table initialization for you.
    Brian Jeffries
    SQL Developer Team

  • How to unit test pl/sql collection in the unit test ?

    There is a function SPLIT_LIST (see below) to split a string list to a collection type .
    I'm trying to use the SQLP DEVELOPER to do the unit test on this fucntion. The idea is to use lookups to give multiple string list for different inputs such as 'A,B,C' 'D', '', 'EF,,GH'. for multiple tests a time.
    the expected result (function returns) are SPLIT_TBL('A','B',C'), SPLIT_TBL('D'), SPLIT_TBL(), SPLIT_TBL('EF','','GH')
    But I have problem to use unit test to verify the result based on the lookups as the out put is the collection. anyone has a good idea to do those ?
    create or replace TYPE SPLIT_TBL AS TABLE OF VARCHAR2(32767) ;
    create or replace
    FUNCTION SPLIT_LIST (
    P_LIST VARCHAR2,
    P_DEL VARCHAR2 DEFAULT ' ' )
    RETURN SPLIT_TBL PIPELINED DETERMINISTIC
    IS
    lv_idx PLS_INTEGER;
    lv_list VARCHAR2(32767) := P_LIST;
    lv_value VARCHAR2(32767);
    BEGIN
    LOOP
    lv_idx := instr(lv_list,p_del);
    IF lv_idx > 0 THEN
    PIPE ROW(SUBSTR(lv_list,1,lv_idx-1));
    lv_list := SUBSTR(lv_list,lv_idx+LENGTH(p_del));
    ELSE
    PIPE ROW(lv_list);
    EXIT;
    END IF;
    END LOOP;
    RETURN;
    END;
    /

    I'm having a similar problem - have you solved yours yet?
    As for me, when I return a collection as an output parameter from a procedure, I can't test the result.
    Example: I'm testing a procedure defined like this: Procedure check_this (p_id number, p_result out CompResult)
    where CompResult is defined as: create or replace type CompResult is varray(100) of CompObj;
    Unit Test understands that the data type of out parameter p_result is CompResult.
    It fills in schemaName.CompResult() as the result (empty varray).
    Editing of the result does not appear to be allowed - it's read only.
    So, when the proc returns a varray that isn't empty, the test fails.

  • Unit Test Repository Problems

    Ciao,
    This is related to SQL Developer 3.0 Unit Test feature. Is it possible to have many shared repository in a single DB instance? How to prevent the users to delete the testcases written by another user in a shared repository?
    Regards,
    Bala

    Hi, it is possible:
    create the two roles
    UT_REPO_USER
    UT_REPO_ADMINISTRATOR
    Extract the file dbtools\unit_test\repository\create10.sql from the jar oracle.sqldeveloper.unit_test.jar
    Run the create10.sql script
    HTH
    Oliver

  • BUG: Unit Testing Process Validations SQL editor - extra spaces appended

    There is a bug in the SQL editor used by Unit Testing Process Validations.
    To re-create:
    Create a Validation with some multi-line SQL and save:
    select *
    from DUAL
    where 1=1
    Click on a different Validation, and then click back onto the Validation just created. SQL Developer will have appended a space to all the lines except the last one. Edit the Validation and save:
    select *
    from DUAL
    where 1=2
    When you navigate to a different validation and back, SQL Developer will have appended an extra space to each line. This can be repeated - each time an extra space will be added.

    There is a bug in the SQL editor used by Unit Testing Process Validations.
    To re-create:
    Create a Validation with some multi-line SQL and save:
    select *
    from DUAL
    where 1=1
    Click on a different Validation, and then click back onto the Validation just created. SQL Developer will have appended a space to all the lines except the last one. Edit the Validation and save:
    select *
    from DUAL
    where 1=2
    When you navigate to a different validation and back, SQL Developer will have appended an extra space to each line. This can be repeated - each time an extra space will be added.

  • SQL Developer 4.0.0.13 and Oracle Cloud DB. Cart Access Issue (Unable to deploy in cloud).

    Hello,
    I asked for a trial account on 04/02 (this year) of the Oracle Cloud. I've been able to create a Cloud Connection in SQL Developer (I'm able to login with my oracle email with the "Service Instance URL"). I am able to see the 11 example tables (DEPT, EMP, and 9 DEMO_X tables).
    My data:
    SQL Developer 4.0.0.13
    DataCenter: US Commercial 2 (US Commercial - Chicago). I'm settled in México, at this moment I don't remember to have selected some DataCenter, but I got that one.
    Domain SFTP Host & Port: sftp.us2.cloud.oracle.com:22
    Domain SFTP User Name: USdddddd (changed here for example reasons)
    Service SFTP Host & Port: sftp.us2.cloud.oracle.com:22
    Service SFTP User Name: USssssss (changed here for example reasons)
    My problem. I cannot deploy on the cloud (via the Cart tool on SQL Developer).
    In chat support, I was told to check this site (1) Data Loading and the Oracle Database Cloud Service. It seems the steps are the same of this site (2) that I was following before Creating and Deploying JSF/JPA Applications to Oracle Cloud.
    My scenario is not according the tutorial. According to (1), the tutorial highlights the use of the user detailed as "Service SFTP User Name" (USssssss). The site says that if I click on that user, I should be able to reset its password on SFTP users. BUT, this user (USssssss, Service SFTP User Name) is NOT shown as it is explained, the user that is shown there is the one under "Domain SFTP information" (USdddddd, that is, the user that I should NOT use, according to that webpage).
    My user Service SFTP User is not shown in Security-SFTP Users. When I click the user name (USssssss), the site takes you to the Security tab, and SFTP Users sub tab. I notice that my Service SFTP User Name (USssssss) appears in Security tab, but it appears under "Users" sub tab, NOT on "SFTP Users" sub tab. Also, if I try to reset the Service SFTP User password (in Users sub tab), the site says "Oracle Cloud will send an email with a temporary password to USssssss USssssss." It does not ask me to write the new password (SFTP Users sub tab works fine, asking me a password for USdddddd).
    Anyway, in SQL Developer, I made several tests in the Cart, testing either the Service and also the Domain users, port 22 and 2222. None of them worked. The message I get is:
    Unable to connect to sftp server with provided details.
    I've also tried to access the sftp url with Putty, PSFTP, and Filezilla. From those three apps, the sftp url gives me timeout (either on port 22, or 2222). But if ping that url, I got a response back.
    So I'm not sure where is the problem. Is it the url? Is it the port? Is it the Service SFTP User? All of them?
    Any comment, is very welcome.
    P.S. It will be nice to have a "posted date" for each tutorial and perhaps identify the Cloud version that is being explained (the Oracle cloud is growing fast, perhaps the tutorials will be deprecated soon).

    Hi Gustavo,
    It appears your Service SFTP user was not created correctly. Please contact support and mention the fact that your Service SFTP user appears on Security/Users tab and not on Security/SFTP Users tab.
    Vlad

  • Bug report: SQL Developer 3.2.09 Crashes for some Replace Regexp

    Hi,
    SQL Developer 3.2.09 (tested on Win XP with SQL Developer built-in Java) crashes for some Replace Regexp.
    Try the following:
    New SQL-sheet
    CTRL-R for Replace
    Enter "||" (two chars) as search-expression
    Enter "" (nothing) as replace-with-expression
    Check Regular Expressions Check Box
    Hit OK
    -->100% CPU usage, no reaction.
    Can you confirm the bug?
    Edited by: blama on Sep 4, 2012 3:48 PM

    I believe the pipe character is a regexp meta character and your regexp probaby matches everything repeatedly. If you want to replace the concatenation operator you don't need a regexp.
    Having said that, I am using SQL Developer on Linux with Java 1.6.0_33 and I don't get the hang, just replacing the same thing again and again.
    On windows with 1.6.0_24, I do get the hang. It may be a java issue.
    Edited by: Jim Smith on Sep 4, 2012 5:39 PM

  • SQL Developer Hangs when connecting for Remote Debug

    Hello,
    I've been trying to use the Remote Debug feature of SQL Developer. We are writing a Web Application that connects to Oracle and I would like to debug a package function on the database server (which is not the same machine as my SQL Developer client).
    To test my configuration, I tried connecting on SQLPlus creating a connection (by calling exec dbms_debug_jdwp.connect_tcp('xxx.xxx.xxx.xxx', 'xxxxx'); ) and calling a function which had a breakpoint and the debugging started immediately on SQL Developer. Then I tried putting the dbms_debug_jdwp.connect_tcp('xxx.xxx.xxx.xxx', 'xxxxx'); call inside the stored procedure I was debugging (prior to the line with the breakpoint) and it connected and got to the breakpoint successfully as well. So I'm pretty sure my firewall / user privileges are set up correctly.
    So I modified the function that my web application eventually calls to create the connection (in order to remain in the same session) but whenever it gets to the connect_tcp line SQL Developer hangs and I'm unable to debug. I've realized that it only hangs if I have a breakpoint there. If I don't have a breakpoint then it creates a connection just fine. Of course without a breakpoint it's a bit difficult to debug isn't it? :)
    My Sql Developer version is 3.0 and I'm connecting to Oracle 11.1.0 Below you can find a dump when running SqlDeveloper with console. My OS is windows XP and my Oracle instance is running on Linux.
    I appreciate any help you can provide.
    2012-01-27 16:08:30
    Full thread dump Java HotSpot(TM) Client VM (11.0-b16 mixed mode):
    "JDI Target VM Interface" daemon prio=6 tid=0x3398f800 nid=0x1574 runnable [0x3702f000..0x3702fa14]
    java.lang.Thread.State: RUNNABLE
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:129)
    at java.net.SocketInputStream.read(SocketInputStream.java:182)
    at com.sun.tools.jdi.SocketConnection.readPacket(SocketTransportService.java:393)
    - locked <0x097d3528> (a java.lang.Object)
    at com.sun.tools.jdi.TargetVM.run(TargetVM.java:99)
    at java.lang.Thread.run(Thread.java:619)
    "JDI Internal Event Handler" daemon prio=6 tid=0x34a82c00 nid=0x15ac in Object.wait() [0x355ef000..0x355efa94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at com.sun.tools.jdi.EventQueueImpl.removeUnfiltered(EventQueueImpl.java:171)
    - locked <0x097218d0> (a com.sun.tools.jdi.EventQueueImpl)
    at com.sun.tools.jdi.EventQueueImpl.removeInternal(EventQueueImpl.java:106)
    at com.sun.tools.jdi.InternalEventHandler.run(InternalEventHandler.java:36)
    at java.lang.Thread.run(Thread.java:619)
    "JPDA Listener" prio=6 tid=0x35806400 nid=0x7b8 runnable [0x3533f000..0x3533fd94]
    java.lang.Thread.State: RUNNABLE
    at java.net.PlainSocketImpl.socketAccept(Native Method)
    at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
    - locked <0x095ec870> (a java.net.SocksSocketImpl)
    at java.net.ServerSocket.implAccept(ServerSocket.java:453)
    at java.net.ServerSocket.accept(ServerSocket.java:421)
    at com.sun.tools.jdi.SocketTransportService.accept(SocketTransportService.java:330)
    at com.sun.tools.jdi.GenericListeningConnector.accept(GenericListeningConnector.java:136)
    at oracle.jdevimpl.debugger.jdi.DebugJDIConnectorListen.run(DebugJDIConnectorListen.java:127)
    at java.lang.Thread.run(Thread.java:619)
    "Native Directory Watcher" prio=2 tid=0x35e47c00 nid=0x170c runnable [0x34fef000..0x34fefa14]
    java.lang.Thread.State: RUNNABLE
    at oracle.ide.natives.NativeHandler.enterWatcherThread(Native Method)
    at oracle.ide.natives.NativeHandler$2.run(NativeHandler.java:252)
    at java.lang.Thread.run(Thread.java:619)
    "Background Parser" prio=6 tid=0x35c4a800 nid=0x17e0 waiting on condition [0x3832f000..0x3832fa14]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:139)
    at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
    at java.lang.Thread.run(Thread.java:619)
    "status-0" prio=2 tid=0x35d54400 nid=0x1208 waiting on condition [0x3812f000..0x3812fc14]
    java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for <0x064a8cf0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
    at java.util.concurrent.DelayQueue.take(DelayQueue.java:160)
    at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:329)
    at oracle.ide.status.StatusExecutor$StatusQueue.take(StatusExecutor.java:291)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    "Background Parser" prio=6 tid=0x35dde800 nid=0xa00 waiting on condition [0x3782f000..0x3782fb14]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:139)
    at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
    at java.lang.Thread.run(Thread.java:619)
    "WeakDataReference polling" prio=2 tid=0x35f59c00 nid=0x1144 in Object.wait() [0x3802f000..0x3802fb14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x08554ba8> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0x08554ba8> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at oracle.ide.util.WeakDataReference$Cleaner.run(WeakDataReference.java:88)
    at java.lang.Thread.run(Thread.java:619)
    "Background Parser" prio=6 tid=0x35d00400 nid=0xe1c waiting on condition [0x37e2f000..0x37e2fc94]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:139)
    at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
    at java.lang.Thread.run(Thread.java:619)
    "TextBufferScavenger" prio=6 tid=0x35df1c00 nid=0xabc in Object.wait() [0x37c2f000..0x37c2fd94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x0842dfe0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0x0842dfe0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at oracle.ide.model.TextNode$FacadeBufferReference$PollingThread.run(TextNode.java:1949)
    "pool-4-thread-1" prio=6 tid=0x33a11c00 nid=0x444 waiting on condition [0x33f0f000..0x33f0fa94]
    java.lang.Thread.State: TIMED_WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for <0x07ba2040> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:198)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1963)
    at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:583)
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:576)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    "IconOverlayTracker Timer" prio=6 tid=0x3491a000 nid=0x1750 in Object.wait() [0x3792f000..0x3792fb94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at java.util.TimerThread.mainLoop(Timer.java:483)
    - locked <0x07b36968> (a java.util.TaskQueue)
    at java.util.TimerThread.run(Timer.java:462)
    "Timer queue for AWT thread" daemon prio=6 tid=0x34913c00 nid=0xdfc in Object.wait() [0x3772f000..0x3772fd94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x075b5cc8> (a java.lang.Object)
    at java.lang.Object.wait(Object.java:485)
    at ice.util.awt.TimedAWTExecutor.nextElem(TimedAWTExecutor.java:108)
    - locked <0x075b5cc8> (a java.lang.Object)
    at ice.util.awt.TimedAWTExecutor.runScheduler(TimedAWTExecutor.java:130)
    at ice.util.awt.TimedAWTExecutor$1.run(TimedAWTExecutor.java:19)
    "WaitCursor-Timer" prio=6 tid=0x35ca5800 nid=0x1230 in Object.wait() [0x3752f000..0x3752fa14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at java.util.TimerThread.mainLoop(Timer.java:483)
    - locked <0x0719c1c0> (a java.util.TaskQueue)
    at java.util.TimerThread.run(Timer.java:462)
    "Timer queue for AWT thread" daemon prio=6 tid=0x35a1f800 nid=0x1444 in Object.wait() [0x3692f000..0x3692fb14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x0719c240> (a java.lang.Object)
    at java.lang.Object.wait(Object.java:485)
    at ice.util.awt.TimedAWTExecutor.nextElem(TimedAWTExecutor.java:108)
    - locked <0x0719c240> (a java.lang.Object)
    at ice.util.awt.TimedAWTExecutor.runScheduler(TimedAWTExecutor.java:130)
    at ice.util.awt.TimedAWTExecutor$1.run(TimedAWTExecutor.java:19)
    "pool-2-thread-1" prio=6 tid=0x35a75800 nid=0x135c waiting on condition [0x3742f000..0x3742fc14]
    java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for <0x06d72e80> (a java.util.concurrent.SynchronousQueue$TransferStack)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
    at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:422)
    at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
    at java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:857)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    "BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x359c6800 nid=0x1618 waiting on condition [0x3732f000..0x3732fc94]
    java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for <0x06d492a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
    at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    "Scheduler" daemon prio=6 tid=0x35a44400 nid=0x131c in Object.wait() [0x3722f000..0x3722fd14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x06d493e0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
    at java.lang.Object.wait(Object.java:485)
    at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
    - locked <0x06d493e0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:429)
    "Thread-8" daemon prio=6 tid=0x35a01400 nid=0x1390 in Object.wait() [0x3712f000..0x3712fd94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x06d49460> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0x06d49460> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at org.tmatesoft.svn.core.javahl.SVNClientImplTracker.run(SVNClientImplTracker.java:65)
    at java.lang.Thread.run(Thread.java:619)
    "ChangeSetService" prio=2 tid=0x3595dc00 nid=0x11d8 in Object.wait() [0x3682f000..0x3682fa94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x06a26d80> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
    at java.lang.Object.wait(Object.java:485)
    at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
    - locked <0x06a26d80> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
    at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
    at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
    at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
    at java.lang.Thread.run(Thread.java:619)
    "Thread-6" daemon prio=6 tid=0x3590e400 nid=0x1520 runnable [0x36b2f000..0x36b2fb14]
    java.lang.Thread.State: RUNNABLE
    at sun.print.Win32PrintServiceLookup.notifyPrinterChange(Native Method)
    at sun.print.Win32PrintServiceLookup.access$100(Win32PrintServiceLookup.java:32)
    at sun.print.Win32PrintServiceLookup$PrinterChangeListener.run(Win32PrintServiceLookup.java:302)
    "TimerQueue" daemon prio=6 tid=0x330a9c00 nid=0x11b0 in Object.wait() [0x3672f000..0x3672fc94]
    java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at javax.swing.TimerQueue.run(TimerQueue.java:236)
    - locked <0x06887680> (a javax.swing.TimerQueue)
    at java.lang.Thread.run(Thread.java:619)
    "TimedCache-Timer" daemon prio=6 tid=0x33a85000 nid=0x76c in Object.wait() [0x3460f000..0x3460fa94]
    java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x05f36890> (a java.util.TaskQueue)
    at java.util.TimerThread.mainLoop(Timer.java:509)
    - locked <0x05f36890> (a java.util.TaskQueue)
    at java.util.TimerThread.run(Timer.java:462)
    "JarIndex Timer" daemon prio=6 tid=0x33a83c00 nid=0x15a8 in Object.wait() [0x3410f000..0x3410fb14]
    java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.util.TimerThread.mainLoop(Timer.java:509)
    - locked <0x05e824b0> (a java.util.TaskQueue)
    at java.util.TimerThread.run(Timer.java:462)
    "AWT-EventQueue-0" prio=6 tid=0x33a6a400 nid=0x15e8 in Object.wait() [0x3400f000..0x3400fb94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at com.sun.tools.jdi.TargetVM.waitForReply(TargetVM.java:281)
    - locked <0x02fa0320> (a com.sun.tools.jdi.Packet)
    at com.sun.tools.jdi.VirtualMachineImpl.waitForTargetReply(VirtualMachineImpl.java:1015)
    at com.sun.tools.jdi.PacketStream.waitForReply(PacketStream.java:51)
    at com.sun.tools.jdi.JDWP$Method$LineTable.waitForReply(JDWP.java:3651)
    at com.sun.tools.jdi.JDWP$Method$LineTable.process(JDWP.java:3627)
    at com.sun.tools.jdi.ConcreteMethodImpl.getBaseLocations(ConcreteMethodImpl.java:343)
    at com.sun.tools.jdi.ConcreteMethodImpl.getLocations(ConcreteMethodImpl.java:262)
    at com.sun.tools.jdi.ConcreteMethodImpl.locationsOfLine(ConcreteMethodImpl.java:120)
    at com.sun.tools.jdi.ReferenceTypeImpl.locationsOfLine(ReferenceTypeImpl.java:893)
    at oracle.jdevimpl.debugger.jdi.DebugJDI.getLocationsOfLine(DebugJDI.java:5254)
    at oracle.jdevimpl.debugger.jdi.DebugJDIBreakpointFileLine.verify(DebugJDIBreakpointFileLine.java:71)
    at oracle.jdevimpl.debugger.jdi.DebugJDIBreakpointPackageFileLine.verify(DebugJDIBreakpointPackageFileLine.java:83)
    at oracle.jdevimpl.debugger.jdi.DebugJDI.breakpointAfterChange(DebugJDI.java:2546)
    - locked <0x09721d70> (a oracle.jdevimpl.debugger.jdi.DebugJDI)
    at oracle.jdevimpl.debugger.jdi.DebugJDIBreakpoint.afterChange(DebugJDIBreakpoint.java:386)
    at oracle.jdevimpl.debugger.jdi.DebugJDI.putBreakpoint(DebugJDI.java:2426)
    - locked <0x09721d70> (a oracle.jdevimpl.debugger.jdi.DebugJDI)
    at oracle.jdevimpl.debugger.jdi.DebugJDI.putBreakpointPackageFileLine(DebugJDI.java:893)
    - locked <0x09721d70> (a oracle.jdevimpl.debugger.jdi.DebugJDI)
    at oracle.jdevimpl.runner.debug.Breakpoint.putBreakpoint(Breakpoint.java:1701)
    at oracle.jdevimpl.runner.debug.DebuggingProcess.afterConnection(DebuggingProcess.java:1352)
    at oracle.jdevimpl.runner.debug.DebuggingProcess.accept(DebuggingProcess.java:1704)
    at oracle.jdevimpl.runner.debug.DebuggingListener$2.run(DebuggingListener.java:231)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    "AWT-Windows" daemon prio=6 tid=0x33a64000 nid=0x12e8 runnable [0x33e0f000..0x33e0fc94]
    java.lang.Thread.State: RUNNABLE
    at sun.awt.windows.WToolkit.eventLoop(Native Method)
    at sun.awt.windows.WToolkit.run(WToolkit.java:291)
    at java.lang.Thread.run(Thread.java:619)
    "AWT-Shutdown" prio=6 tid=0x33a31c00 nid=0xd4c in Object.wait() [0x33d0f000..0x33d0fd14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x05e826a0> (a java.lang.Object)
    at java.lang.Object.wait(Object.java:485)
    at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
    - locked <0x05e826a0> (a java.lang.Object)
    at java.lang.Thread.run(Thread.java:619)
    "Java2D Disposer" daemon prio=10 tid=0x33a41400 nid=0x1294 in Object.wait() [0x33c0f000..0x33c0fd94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x05e82730> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0x05e82730> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at sun.java2d.Disposer.run(Disposer.java:125)
    at java.lang.Thread.run(Thread.java:619)
    "Low Memory Detector" daemon prio=6 tid=0x33076000 nid=0x688 runnable [0x00000000..0x00000000]
    java.lang.Thread.State: RUNNABLE
    "CompilerThread0" daemon prio=10 tid=0x3306fc00 nid=0x910 waiting on condition [0x00000000..0x336df7bc]
    java.lang.Thread.State: RUNNABLE
    "Attach Listener" daemon prio=10 tid=0x3306e400 nid=0x162c runnable [0x00000000..0x00000000]
    java.lang.Thread.State: RUNNABLE
    "Signal Dispatcher" daemon prio=10 tid=0x3306d000 nid=0x17a4 waiting on condition [0x00000000..0x00000000]
    java.lang.Thread.State: RUNNABLE
    "Finalizer" daemon prio=8 tid=0x3305d400 nid=0xe3c in Object.wait() [0x333df000..0x333dfc94]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x05e00298> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    - locked <0x05e00298> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    "Reference Handler" daemon prio=10 tid=0x33058800 nid=0x1228 in Object.wait() [0x332df000..0x332dfd14]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
    - locked <0x05e00320> (a java.lang.ref.Reference$Lock)
    "main" prio=6 tid=0x00bc7c00 nid=0x10e0 waiting on condition [0x00000000..0x0012fae8]
    java.lang.Thread.State: RUNNABLE
    "VM Thread" prio=10 tid=0x33055000 nid=0x194 runnable
    "VM Periodic Task Thread" prio=10 tid=0x33077800 nid=0xfd0 waiting on condition
    JNI global references: 2649
    Heap
    def new generation total 9216K, used 3904K [0x02cd0000, 0x036c0000, 0x05e00000)
    eden space 8256K, 35% used [0x02cd0000, 0x02fb0330, 0x034e0000)
    from space 960K, 100% used [0x035d0000, 0x036c0000, 0x036c0000)
    to space 960K, 0% used [0x034e0000, 0x034e0000, 0x035d0000)
    tenured generation total 121024K, used 61455K [0x05e00000, 0x0d430000, 0x2acd0000)
    the space 121024K, 50% used [0x05e00000, 0x09a03eb0, 0x09a04000, 0x0d430000)
    compacting perm gen total 71168K, used 70950K [0x2acd0000, 0x2f250000, 0x32cd0000)
    the space 71168K, 99% used [0x2acd0000, 0x2f219bf8, 0x2f219c00, 0x2f250000)
    No shared spaces configured.
    Edited by: 910659 on Jan 27, 2012 7:45 AM

    What I mean is that I put the connect_tcp command inside the package function I want to debug in order to ensure it's going to remain in the same session. e.g.:
    Function GetValue Return Varchar2 Is
    Begin
    dbms_debug_jdwp.connect_tcp('xxx.xxx.xxx.xxx', '25255');
    return 'My Value';
    End;
    I'm afraid I cannot post our code which causes this problem due to our information security policies and simple console and web applications failed to replicate the problem. The function creates a connection to Oracle SQL Developer (which can be seen in the environment with the small ladybug icon) if no breakpoints are set which obviously doesn't allow breaking into the function. However if a breakpoint is also specified in the Return line the connection seems to freeze Oracle SQL Developer. No ladybug icon is shown and no Remote Debug Session seems to open.

  • Transport of ABAP Unit Test Classes between systems.

    Hi guys
    I have a bit of a dilemma on hands here pertaining to the transport of ABAP Unit test classes. Generally when you create a transport containing classes the transport manager will automatically include all "programs" related to the class like the local type definitions, local implementations and with ABAP Unit the local test classes.
    <b>The question that I have is how would one go about excluding the ABAP Unit test classes in transports to production systems and pre-WAS 6.40 systems that do not support ABAP Unit? Does the transport system automatically manage this for you?</b> Any help ideas regarding this would be greatly appreciated.
    Kind regards
    Ettienne Hugo

    Hello Ettienne
    I have a very similar problem that I have to maintain objects for release 6.20 and 6.40. Since I appreciate ABAP Unit Tests as being very helpful I do not want to miss them even in such a situation.
    My approach is as following:
    - If possible, I try to separate the local classes from the tested object, for example:
    - Report or function group
         - contains an include like <z_include_ft01>
                - Within <i><z_include_ft01></i> I have a single stament <i><z_include_au01></i>
    The actual ABAP Unit Tests are coded in <z_include_au01>. Now if I need to ship the development to a release < 6.40 the only thing I need to do is to comment the single INCLUDE statement in <z_include_ft01>. This manual step cannot be ommitted (however, it would be simple task to define an eCATT doing this). In addition, include <z_include_au01> should not be in the transport request for the development (if it happened the import error would not affect the function of the development because it is no longer linked together).
    Advantage of this approach:
    - I clearly see that my development contains ABAP Unit Tests (use naming conventions for the includes) and
    - I can ship - with little effort - the development to SAP releases not supporting ABAP Unit Testing yet
    Regards
      Uwe

  • SQL Developer Data Modeling pricing

    I just downloaded the EA version of SQL Developer Data Modeling. I read in the release notes that the production release won't be free - any idea about the pricing ?
    Matthias

    Once the pricing for SQL Developer Data Modeling has been confirmed, we will release the full licensing detail. This will not affect the SQL Developer licensing that exists today. We plan to release SQL Developer Data Modeling as a stand alone product and then as an extension to SQL Developer, for those who want to work in an integrated environment. You can download the second early adopter release of SQL Developer Data Modeling and test and use the product. Once we have a production release, we will not answer queries on the early adopter releases and the feedback application we are currently offering for this will be shut down. As such you can continue to work with the early adopter release, but it is incomplete and would be unsupported.
    Sue

  • SQL Developer 2.1: Problem exporting and importing unit tests

    Hi,
    I have created several unit tests on functions that are within packages. I wanted to export these from one unit test repository into another repository on a different database. The export and import work fine, but when running the tests on the imported version, there are lots of ORA-06550 errors. When debugging this, the function name is missing in the call, i.e. it is attempting <SCHEMA>.<PACKAGE> (parameters) instead of <SCHEMA>.<PACKAGE>.<FUNCTION> (parameters).
    Looking in the unit test repository itself, it appears that the OBJECT_CALL column in the UT_TEST table is null - if I populate this with the name of the function, then everything works fine. Therefore, this seems to be a bug with export and import, and it is not including this in the XML. The same problem happens whether I export a single unit test or a suite of tests. Can you please confirm whether this is a bug or whether I am doing something wrong?
    Thanks,
    Pierre.

    Hi Pierre,
    Thanks for pointing this out. Unfortunately, it is a bug on our side and you have found the (ugly) "work-around".
    Bug 9236694 - 2.1: OTN: UT_TEST.OBJECT_CALL COLUMN NOT EXPORTED/IMPORTED
    Brian Jeffries
    SQL Developer Team

  • Unit testing packages in sql developer

    It appears that the specify parameters window is blank for packaged functions which means the test call fails when run. Is this a grant or synonym issue ( or something similar ) or is there an issue with testing packages via the unit test interface of sql developer. Thanks in advance.

    Seems that you cannot right click on the packaged schema object from the schema connection i.e. you have to create the test from the unit test tab and then choose the object type i.e select packages and then the packaged function or procedure. This method results in the Specify Parameters window having the correct signature displayed. Procedures or methods can be created via the unit test tab or the active connection tab.

  • SQL Developer Unit Testing - Validation with PL/SQL

    Hi,
    I am trying to create Unit tests using SQL Developer UT framework.
    But when i am creating validation using User PL/SQL code option.
    Then how can i check value returned by l_count in code snippet below:
    -- Please raise an exception if the validation fails.
    -- For example:
    DECLARE
    l_count NUMBER;
    wrong_count EXCEPTION;
    BEGIN
    SELECT count(*) into l_count
    FROM test_recon
    WHERE
    match_num = 99836936
    AND Stg_status_flag <> 'E';
    IF l_count = 0
    THEN
    RAISE wrong_count;
    END IF;
    END;
    Also, can someone please refer me to few more demo examples (apart from oracle docs) to implement good test cases with SQL developer.
    I appreciate your help.
    Regards
    Dipali

    Probably not the answer you're looking for, but back when I was playing around with the Unit Test stuff, I didn't have sys privs, and the DBAs were a little busy at the time to set a up a repository for me. Rather than wait, I installed Oracle XE on my machine and created a small dev schema and deployed unit test to that. It's so much easier to perform quick proof of concepts when you have full control.

  • Unit Test in SQL Developer 2.1: Automated Builds

    Hi,
    I am interested to know if the new Unit Testing framework can be accessed via API so the test execution is initiated from automated build process.
    Regards,
    Vadim

    I am having a problem with the unit testing command line.
    I am attempting to run the unit testing using the command line interface.
    I can connect to UNIT_TEST_REPOS schema in SQL developer.
    I am successfully running units test and suites in SQL developer.
    UNIT_TEST_REPOS, RCSV1 and DEVER users are granted on the UT_REPO_USER role and UNIT_TEST_REPOS and DEVER on the UT_REPO_ADMINISTRATOR.
    The following commands result in an error box saying "No Repository was found on the selected connection, you need to create a repository." (The HELP button apparently does nothing. The OK button closes the box.)
    C:\Program Files\sqldeveloper\sqldeveloper\bin>UtUtil -exp -test -name RCSV1_RCS_SECURITY.GET_LDAP_BASE -repo unit_test_repos -file c:\ut_xml\test.xml
    Unable to open repository
    C:\Program Files\sqldeveloper\sqldeveloper\bin>UtUtil -run -test -name RCSV1_RCS_SECURITY.GET_LDAP_BASE -repo unit_test_repos -db dever
    Unable to open repository
    C:\Program Files\sqldeveloper\sqldeveloper\bin>UtUtil -run -test -name RCSV1_RCS_SECURITY.GET_LDAP_BASE -repo dever -db dever
    Unable to open repository
    I would guess that I am not supplying the correct connection info.
    My last comment triggered an idea. It turns out that the connection names required are those connections named in SQL developer. In my case, they are not the same as the schema names. The following command worked as advertised.
    C:\Program Files\sqldeveloper\sqldeveloper\bin>UtUtil -run -test -name RCSV1_RCS_SECURITY.GET_LDAP_BASE -repo UNIT_TEST -db DeverLocal
    The ANT target is
    <target name="UnitTests">
    <exec executable="cmd" dir="${sqldev.bin.dir}">
    <arg value="/c"/>
    <arg value="UtUtil -run -suite -name RCSV1 -repo UNIT_TEST -db DeverLocal"/>
    </exec>
    </target>
    Regards,
    Bill

Maybe you are looking for