Procedure call through InstantClient 10.1.0.4 (ODBC) hangs the session

Hello,
The application has been made by Visual Basic 6.0 sp5, it uses MDAC 2.5. RDBMS version is 9.2, server OS Aix 5.2, client OS XP Professional SP2.
In other ways the application is working properly, but when a user tries to start a report which calls a procedure through ODBC the following happens:
(1) The workstation processor starts working under a permanent load of 100%.
(2) The ODBC trace stops here:
{? = call XXXX_YYYY.ZZZ_AAAAAAAA
['BB_BBBB','200511','200511','CCC',null,null,'null','null'}
(3) The database listener trace (admin, on the server) stops here (287 rows follow which are the result of trying to start a report):
nsevwait: 1 newly-posted event(s)
nsevfnt: cxd: 0x1057c390 stage 0: NT events set:
     CONNECTION REQUEST
nsevfnt: cxd: 0x1057c390 stage 0: NS events set:
     INCOMING CALL
nsevwait: event is 0x1, on 3
nsevwait: 1 posted event(s)
nsglhe: entry
nsmal: 752 bytes at 0x11060b090
nsmal: 2800 bytes at 0x110616030
nsopen: opening transport...
nttcon: entry
nttcon: toc = 3
nttcnp: entry
ntvlin: entry
ntvlin: exit
nttcnp: Validnode Table IN use; err 0x0
nttcnp: getting sockname
nttcnp: exit
nttcnr: entry
nttcnr: waiting to accept a connection.
nttcnr: getting sockname
nttvlser: entry
nttvlser: valid node check on incoming node xxx.yyy.z.50
nttvlser: Accepted Entry: xxx.yyy.z.50
nttcnr: exit
nttcon: set TCP_NODELAY on 18
nttcon: exit
nsopen: transport is open
nsnainit: answer
nsnasvnainfo: NA disabled for this connection
nainit: entry
nagblini: entry
nau_gin: entry
nau_gparams: entry
nam_gbp: Reading parameter "sqlnet.authentication_required" from parameter file
nam_gbp: Parameter not found
nau_gparams: Using default value "FALSE"
nau_gslf: entry
nam_gic: entry
nam_gic: Counting # of items in "sqlnet.authentication_services" parameter
nam_gic: Parameter not found
nam_gic: Found 0 items
nam_gic: exit
nau_gslf: Using default value "all available adapters"
nauss_set_state: entry
nauss_set_state: exit
nau_gslf: exit
nau_gparams: exit
nau_gin: exit
nagblini: exit
na_saveprot: entry
na_saveprot: exit
nacomin: entry
nas_init: entry
nas_init: exit
nau_ini: entry
naugcp_get_connect_parameters: entry
nauss_set_state: entry
nauss_set_state: exit
naugcp_get_connect_parameters: exit
nau_gettab: entry
nau_tadv: entry
nau_fad: entry
nau_fad: exit
nau_fad: entry
nau_fad: exit
nau_fad: entry
nau_fad: exit
nau_fad: entry
nau_fad: exit
nau_tadv: exit
nau_gettab: exit
nau_sini: entry
nau_sini: exit
nau_ini: exit
naeeinit: entry
nam_gbp: Reading parameter "SQLNET.FIPS_140" from parameter file
nam_gbp: Parameter not found
nam_gnsp: Reading parameter "SQLNET.ENCRYPTION_SERVER" from parameter file
nam_gnsp: Parameter not found
naequad: Using default value "ACCEPTED"
nam_gic: entry
nam_gic: Counting # of items in "SQLNET.ENCRYPTION_TYPES_SERVER" parameter
nam_gic: Parameter not found
nam_gic: exit
naesno: Using default value "all available algorithms"
naeshow: entry
naeshow: exit
naeeinit: exit
naecinit: entry
nam_gnsp: Reading parameter "SQLNET.CRYPTO_CHECKSUM_SERVER" from parameter file
nam_gnsp: Parameter not found
naequad: Using default value "ACCEPTED"
nam_gic: entry
nam_gic: Counting # of items in "SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER" parameter
nam_gic: Parameter not found
nam_gic: exit
naesno: Using default value "all available algorithms"
naeshow: entry
naeshow: exit
naecinit: exit
nadisc: entry
nacomtm: entry
nacompd: entry
nacompd: exit
nacompd: entry
nacompd: exit
nacomtm: exit
nas_dis: entry
nas_dis: exit
nau_dis: entry
nau_dis: exit
naeetrm: entry
naeetrm: exit
naectrm: entry
naectrm: exit
nagbltrm: entry
nau_gtm: entry
nau_gtm: exit
nagbltrm: exit
nadisc: exit
nainit: exit
nsnainit: NS Connection version: 311
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsnainit: "or" info flags: 0xd     Translations follow:
     native service(s) is (are) wanted
     NA disabled remotely for this connection
     NA services unavailable on both processes - negotiation not needed
nsnainit: "or" info flags: 0xd     Translations follow:
     native service(s) is (are) wanted
     NA disabled remotely for this connection
     NA services unavailable on both processes - negotiation not needed
"and" info flags: 0xd     Translations follow:
     native service(s) is (are) wanted
     NA disabled remotely for this connection
     NA services unavailable on both processes - negotiation not needed
nsopen: global context check-in (to slot 11) complete
nsopen: lcl[0]=0x7fe9ff, lcl[1]=0x12003, gbl[0]=0x7e3f, gbl[1]=0x2001, tdu=32767, sdu=8192
nsdo: cid=11, opcode=65, bl=0, what=0, uflgs=0x0, cflgs=0x2
nsdo: rank=64, nsctxrnk=0
nsdo: nsctx: state=7, flg=0x4200, mvd=0
nsdo: nsctxrnk=0
nsanswer: deferring connect attempt; at stage 5
nsevreg: begin registration process for 11
nsevreg: sgt=0, evn=1, evt[2]=0x0
nsevreg: begin notification process for 11
nsevreg: rdm=0, sgt=0, evt[0]=0x20, [1]=0x20, [2]=0x0, nrg=0
nsevreg: registering for 0x20
nsglhe: exit
nsevwait: 10 registered connection(s)
nsevwait: 0 pre-posted event(s)
nsevwait: waiting for transport event (1 thru 11)...
nsevwait: 1 newly-posted event(s)
nsevfnt: cxd: 0x10606bb0 stage 5: NT events set:
     READ
nsevfnt: cxd: 0x10606bb0 stage 5: NS events set:
     OUTGOING CALL COMPLETE
nsevdansw: at STAGE 5
nsdo: cid=11, opcode=68, bl=2040, what=8, uflgs=0x0, cflgs=0x3
nsdo: rank=64, nsctxrnk=0
nsdo: nsctx: state=14, flg=0x4204, mvd=0
nsdo: gtn=0, gtc=0, ptn=10, ptc=8163
nscon: doing connect handshake...
nscon: recving a packet
nsprecv: reading from transport...
nttrd: entry
nttrd: socket 18 had bytes read=262
nttrd: exit
nsprecv: 262 bytes from transport
nsprecv: tlen=262, plen=262, type=1
nscon: got NSPTCN packet
nsconneg: vsn=313, lov=300, opt=0x0, sdu=2048, tdu=32767, ntc=0x860e
nsconneg: vsn=311, gbl=0x1, sdu=2048, tdu=32767
nscon: got 204 bytes connect data
nsdo: nsctxrnk=0
nsevdansw: exit
nttctl: entry
nttctl: Clearing non-blocking mode
nsevwait: event is 0x20, on 11
nsevwait: 1 posted event(s)
nsglhe: entry
nsglfc: Assume establishing a connection: look for SID
nsglfc: command = establish
nttaddr2bnd: entry
nttaddr2bnd: exit
nlpcaini: entry
nlpcaini: prg = /oracle9/app/product/9.2.0/bin/oracle
nlpcaini: arg[0] = oracleaaaaa
nlpcaini: arg[1] = (LOCAL=NO)
nlpcaini: env[0] = _=/ddddddd/app/product/9.0.2/bin/lsnrctl
nlpcaini: env[1] = TMPDIR=/lisatmp
nlpcaini: env[2] = LANG=en_US
nlpcaini: env[3] = LOGIN=ddddddd
nlpcaini: env[4] = PATH=/ddddddd/app/product/9.0.2/dcm/bin:/ddddddd/app/product/9.0.2/opm/bin:/ddddddd/app/product/9.0.2/bin:/usr/local/bin:/usr/ccs/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/home/ddddddd/bin:/usr/bin/X11:/sbin:.
nlpcaini: env[5] = NLS_LANG=American_America.we8iso8859P1
nlpcaini: env[6] = ORACLE_BASE=/ddddddd/app/product
nlpcaini: env[7] = LC__FASTMSG=true
nlpcaini: env[8] = CGI_DIRECTORY=/var/docsearch/cgi-bin
nlpcaini: env[9] = LOGNAME=ddddddd
nlpcaini: env[10] = TMP=/lisatmp
nlpcaini: env[11] = USER_NLS_LANG=Finnish_Finland.we8iso8859P1
nlpcaini: env[12] = MAIL=/usr/spool/mail/ddddddd
nlpcaini: env[13] = LOCPATH=/usr/lib/nls/loc
nlpcaini: env[14] = PS1=$PWD[SID=$ORACLE_SID]>$
nlpcaini: env[15] = LDR_CNTRL=MAXDATA=0x20000000
nlpcaini: env[16] = DOCUMENT_SERVER_MACHINE_NAME=localhost
nlpcaini: env[17] = USER=ddddd
nlpcaini: env[18] = AUTHSTATE=files
nlpcaini: env[19] = TNS_ADMIN=/ddddddd/app/product/9.0.2/network/admin
nlpcaini: env[20] = DEFAULT_BROWSER=netscape
nlpcaini: env[21] = DISPLAY=cccc:0.0
nlpcaini: env[22] = SHELL=/usr/bin/ksh
nlpcaini: env[23] = ODMDIR=/etc/objrepos
nlpcaini: env[24] = DOCUMENT_SERVER_PORT=49213
nlpcaini: env[25] = ORA_NLS33=/ddddddd/app/product/9.0.2/ocommon/nls/admin/data
nlpcaini: env[26] = HOME=/home/ddddddd
nlpcaini: env[27] = TERM=dumb
nlpcaini: env[28] = MAILMSG=[YOU HAVE NEW MAIL]
nlpcaini: env[29] = ORACLE_HOME=/oracle9/app/product/9.2.0
nlpcaini: env[30] = ITECONFIGSRV=/etc/IMNSearch
nlpcaini: env[31] = PWD=/home/ddddddd
nlpcaini: env[32] = DOCUMENT_DIRECTORY=/usr/docsearch/html
nlpcaini: env[33] = TZ=WET-2WET-3,M3.5.0/03:00:00,M10.5.0/04:00:00
nlpcaini: env[34] = ITECONFIGCL=/etc/IMNSearch/clients
nlpcaini: env[35] = ITE_DOC_SEARCH_INSTANCE=search
nlpcaini: env[36] = A__z=! LOGNAME
nlpcaini: env[37] = ORA_NET2_DESC=4,7
nlpcaini: env[38] = LIBPATH=/ddddddd/app/product/9.0.2/lib32:/ddddddd/app/product/9.0.2/lib
nlpcaini: env[39] = NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lib/nls/msg/%L/%N.cat
nlpcaini: env[40] = ORACLE_SID=aaaaa
nlpcaini: exit
nsbeqaddr: connecting...
ntpcon: entry
ntpcon: toc = 1
sntpcall: entry
sntpcall: About to exec /oracle9/app/product/9.2.0/bin/oracle
sntpcall: environ[41] = ""
sntpcall: detaching from parent with additional fork
sntpcall: result string is NTP0 33240
sntpcall: hdl[IR]=23, hdl[IW]=22
sntpcall: exit
ntpcon: NT layer IPC connection has been established
ntpcon: exit
nttaddr2bnd: entry
nttaddr2bnd: exit
nsbeqaddr: doing connect handshake...
nsbequeath: doing connect handshake...
ntpwr: entry
ntpwr: exit
ntpwr: entry
ntpwr: exit
ntpwr: entry
ntpwr: exit
ntprd: entry
ntprd: exit
ntprd: entry
ntprd: exit
nsbequeath: NSE=0
ntpdisc: entry
ntpdisc: exit
nsbeqaddr: connect handshake is complete
nstimarmed: no timer allocated
nsdo: cid=11, opcode=98, bl=0, what=0, uflgs=0x40, cflgs=0x2
nsdo: rank=64, nsctxrnk=0
nsdo: nsctx: state=2, flg=0x4200, mvd=0
nsevunreg: cid=11, sgt=0, rdm=0
nsevunreg: 9 registered connection(s)
nsdo: nsctxrnk=0
nsclose: closing transport
nttdisc: entry
nttdisc: Closed socket 18
nttdisc: exit
nsclose: global context check-out (from slot 11) complete
nsmfr: 2800 bytes at 0x110616030
nsmfr: 752 bytes at 0x11060b090
nsglhe: exit
nsevwait: 9 registered connection(s)
nsevwait: 0 pre-posted event(s)
nsevwait: waiting for transport event (1 thru 10)...
The procedure call through ODBC is working when we use Oracle9i Client.
So. All comments are much appreciated!
Terho

in addition:
my main problem is that Oracle ODBC driver does not understand something like
{call types.test_procedure (?, ?,,?)}
to pass not all parameters (I whant to use default value for some of parameters)

Similar Messages

  • Error 'ORA-01403 no data found', if a procedure called through $Universe

    Hello,
    we use at our customer the scheduling software $Universe. The problem follows is happend at calling PL/SQL-procedures within SQL*Plus:
    Within the calling procedur another subprogram will be called. This program crashed on select of currval with the error 'ORA-01403 no data found'. This error happens only, if the procedure called through $Universe. If the procedure called directly from SQL*Plus or about a unix shell-script, no error happens.
    About the command "select saddr,sid,serial# from sys.V_$SESSION where
    username ='xxx';" we select the Session_ID's. These are identically before and after call of the procedure!
    Do you have an idea, how the problem can be?
    Next information about OS, releases, settings of Oracle-Session-Parameters, and the crashing procedure:
    SQL*Plus: Release 8.1.6.0.0 - Production on Fri Mar 15 13:25:05 2002
    (c) Copyright 1999 Oracle Corporation. All rights reserved.
    Connected to:
    Oracle8i Enterprise Edition Release 8.1.6.0.0 - Production
    With the Partitioning option
    JServer Release 8.1.6.0.0 - Production
    OS: HP-UX11
    ORACLE-Server NLS-parameters on HP-UX:
    NLS_LANGUAGE               AMERICAN
    NLS_TERRITORY               AMERICA
    NLS_CURRENCY               $
    NLS_ISO_CURRENCY          AMERICA
    NLS_NUMERIC_CHARACTERS          .,
    NLS_CALENDAR               GREGORIAN
    NLS_DATE_FORMAT               DD-MON-RR
    NLS_DATE_LANGUAGE          AMERICAN
    NLS_CHARACTERSET          WE8DEC
    NLS_SORT               BINARY
    NLS_TIME_FORMAT               HH.MI.SSXFF AM
    NLS_TIMESTAMP_FORMAT          DD-MON-RR HH.MI.SSXFF AM
    NLS_TIME_TZ_FORMAT          HH.MI.SSXFF AM TZH:TZM
    NLS_TIMESTAMP_TZ_FORMAT          DD-MON-RR HH.MI.SSXFF AM TZH:T
    NLS_DUAL_CURRENCY          $
    NLS_NCHAR_CHARACTERSET          WE8DEC
    NLS_COMP               BINARY
    Windows-desktop NLS-parameters:
    ALTER SESSION set NLS_LANGUAGE = 'GERMAN';
    ALTER SESSION set NLS_TERRITORY = 'GERMANY';
    ALTER SESSION set NLS_ISO_CURRENCY = 'GERMANY';
    ALTER SESSION set NLS_NUMERIC_CHARACTERS = ',.';
    ALTER SESSION set NLS_CALENDAR = 'GREGORIAN';
    ALTER SESSION set NLS_DATE_FORMAT = 'DD/MM/YY';
    ALTER SESSION set NLS_DATE_LANGUAGE = 'GERMAN';
    ALTER SESSION set NLS_SORT = 'GERMAN';
    ALTER SESSION set NLS_TIME_FORMAT = 'HH24:MI:SSXFF';
    ALTER SESSION set NLS_TIMESTAMP_FORMAT = 'DD.MM.RR HH24:MI:SSXFF';
    ALTER SESSION set NLS_TIME_TZ_FORMAT = 'HH24:MI:SSXFF TZH:TZM';
    ALTER SESSION set NLS_TIMESTAMP_TZ_FORMAT = 'DD.MM.RR HH24:MI:SSXFF
    TZH:TZM';
    ALTER SESSION set NLS_DUAL_CURRENCY = '?';
    ALTER SESSION set NLS_COMP = 'BINARY';
    PROCEDURE PROC_NEW_ID (p_value IN NUMBER,
    p_field IN VARCHAR2,
    p_table IN VARCHAR2,
    p_currval OUT NUMBER)
    IS
    v_stmt VARCHAR2(200);
    v_currval NUMBER;
    BEGIN
    -- Bildung des SQL-Statements.
    v_stmt := 'INSERT INTO '||p_table|| '('|| p_field || ') VALUES
    ('||p_value||')';
    -- Ausfuehren des SQL-Statements.
    EXECUTE IMMEDIATE v_stmt;
    COMMIT;
    -- Bildung des SQL-Statements.
    v_stmt := 'SELECT SEQ_'|| p_table || '.CURRVAL FROM DUAL';
    -- Ausfuehren des SQL-Statements.
    EXECUTE IMMEDIATE v_stmt INTO v_currval;
    -- Wertrueckgabe
    p_currval := NVL(v_currval,0);
    EXCEPTION
    WHEN OTHERS THEN
    pkg_mira_protokoll.proc_write_error_fwd
    (pkg_mira_consts.act_error,
    SQLCODE,
    SQLERRM(SQLCODE),
    'PROC_NEW_ID');
    p_currval := 0;
    RAISE;
    END;
    Thanks for your request!
    Best regards
    Esser Office Consulting KG
    J|rgen Esser

    This forum is for posting feedback about the OTN site.
    The best place for your question is probably a Portal forum.
    There is a list of Portal forums here:
    http://forums.oracle.com/forums/index.jsp?cat=13

  • How can I supervise a procedure called  through a job process

    Hi all ...
    How can I supervise a procedure called through a job process, and I mean to see if this procedure is active at the next time that the process should run again.
    Because the procedure may run much longer that the next_time parameter for that process (job).
    THANKS for you future(hope so) answer.

    If this is a scheduled oracle job, then check the DBA_JOBS_RUNNING view
    Hi all ...
    How can I supervise a procedure called through a job process, and I mean to see if this procedure is active at the next time that the process should run again.
    Because the procedure may run much longer that the next_time parameter for that process (job).
    THANKS for you future(hope so) answer.

  • TS1398 till 2 days back I was able to use facetime but now I can call through facetime and ring is also there but the thing is while connecting it is showing FACETIME FAILED..plz tell me a solution for this

    till 2 days back I was able to use facetime but now I can call through facetime and ring is also there but the thing is while connecting it is showing FACETIME FAILED..plz tell me a solution for this

    you have a ps cs4 license for mac and you have some way of finding your serial number.
    if yes, download an install the installation file.  if you already have the installation file, what is its name and file extension?  (eg, if it's one file, it should be a dmg file.)
    if you need the installation file,
    Downloads available:
    Suites and Programs:  CC 2014 | CC | CS6 | CS5.5 | CS5 | CS4 | CS3
    Acrobat:  XI, X | 9,8 | 9 standard
    Premiere Elements:  13 | 12 | 11, 10 | 9, 8, 7 win | 8 mac | 7 mac
    Photoshop Elements:  13 |12 | 11, 10 | 9,8,7 win | 8 mac | 7 mac
    Lightroom:  5.6| 5 | 4 | 3
    Captivate:  8 | 7 | 6 | 5
    Contribute:  CS5 | CS4, CS3
    Download and installation help for Adobe links
    Download and installation help for Prodesigntools links are listed on most linked pages.  They are critical; especially steps 1, 2 and 3.  If you click a link that does not have those steps listed, open a second window using the Lightroom 3 link to see those 'Important Instructions'.

  • How come when I place a call through FaceTime on my iPad I can see the other person and they can't see me?

    How come when I place a call through FaceTime on my iPad I can see the other person and they can't see me?

    Is your camera sitched on?
    Using FaceTime
    http://support.apple.com/kb/ht4319
    Troubleshooting FaceTime
    http://support.apple.com/kb/TS3367

  • Best Way to Capture Stored Procedure Calls through Extended Events?

    I am trying implement Real Simple Solution for Database Monitoring:
    If any of the RPC Calls takes more than 200 milliseconds or more than 10K Reads , I want to compile the list on daily basis and sent out an email to our team. We usually did that through RPC Completed event through Profiler.
    We want to Implement the same through Extended Events but SQL Text is not being captured because we are using SQL Server 2008 R2.
    Whats the best way with Extended Events to Capture:
    RPC Calls with Parameters and Values and Reads, Writes, CPU and Query HASH.
    What we currently have is :
    Has anyone done this using SQL Server 2008 R2 and  please let me know.
    IF EXISTS(SELECT * FROM sys.server_event_sessions WHERE name='LongRunningQueries')
    DROP EVENT SESSION [LongRunningQueries] ON SERVER;
    CREATE EVENT SESSION [LongRunningQueries]
    ON SERVER
    ADD EVENT sqlserver.module_end(
    ACTION (sqlserver.client_app_name, sqlserver.client_hostname, sqlserver.database_id, sqlserver.plan_handle, sqlserver.session_id, sqlserver.sql_text, sqlserver.tsql_stack, sqlserver.username)),
    ADD EVENT sqlserver.rpc_completed(
    ACTION (sqlserver.client_app_name, sqlserver.client_hostname, sqlserver.database_id, sqlserver.session_id, sqlserver.sql_text, sqlserver.username)),
    ADD EVENT sqlserver.sp_statement_completed(
    ACTION (sqlserver.client_app_name, sqlserver.session_id))
    ADD TARGET package0.asynchronous_file_target(
    SET filename='G:\LongRunningQueries.xet', metadatafile='G:\LongRunningQueries.xem')
    WITH (MAX_MEMORY = 4096KB, EVENT_RETENTION_MODE = ALLOW_MULTIPLE_EVENT_LOSS, MAX_DISPATCH_LATENCY = 300 SECONDS, MAX_EVENT_SIZE = 0KB, MEMORY_PARTITION_MODE = NONE, TRACK_CAUSALITY = ON, STARTUP_STATE = ON)
    ALTER EVENT SESSION [LongRunningQueries] ON SERVER STATE = START
    I90Runner

    Hello,
    Please read the following resource.
    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/d6d51f6e-c01b-4880-abb2-4f0cfd1f4531/extended-event-trace-on-event-rpccompleted-not-capturing-sqltext-action-unable-to-retrieve-sql?forum=sqldatabaseengine
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • Event ID: 5014, 5004 The DFS Replication Service is stopping communication with partner / Error 1726 (The remote procedure call failed.)

    I'm replicating between two servers in two sites (Server A - Server 2012 R2 STD, Server B - Server 2008 R2) over a VPN (Sonicwall Firewall).  Though the initial replication seems to be
    happening it is very slow (the folder in question is less than 3GB).  I'm seeing these in the event viewer every few minutes:
    The DFS Replication service is stopping communication with partner PPIFTC for replication group FTC due to an error. The service will retry the connection periodically.
    Additional Information:
    Error: 1726 (The remote procedure call failed.)
    and then....
    The DFS Replication service successfully established an inbound connection with partner PPIFTC for replication group FTC.
    Here are all my troubleshooting steps (keep in mind that our VPN is going through a SonicWall <--I increased the TCP timeout to 24 hours):
    -Increased TCP Timeout to 24 hours 
    -Added the following values on both sending and receiving members and rebooted server
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
    Value =DisableTaskOffload
    Type = DWORD
    Data = 1
    Value =EnableTCPChimney
    Type = DWORD
    Data = 0
    Value =EnableTCPA
    Type = DWORD
    Data = 0
    Value =EnableRSS
    Type = DWORD
    Data = 0
    ---------------------------------more troubleshooting--------------------------
    -Disabled AntiVirus on both members
    -Made sure DFSR TCP ports 135 & 5722 are open
    -Installed all hotfixes for 2008 R2 (http://support.microsoft.com/kb/968429) and rebooted
    -Ran NETSTAT –ANOBP TCP and the DFS executable results are listed below:
    Sending Member:
    [DFSRs.exe]
      TCP    10.x.x.x:53            0.0.0.0:0             
    LISTENING       1692
    [DFSRs.exe]
      TCP    10.x.x.x:54669        
    10.x.x.x:5722          TIME_WAIT       0
      TCP    10.x.x.x:54673        
    10.x.x.x:5722          ESTABLISHED     1656
     [DFSRs.exe]
      TCP    10.x.x.x:64773        
    10.x.x.x:389           ESTABLISHED     1692
    [DFSRs.exe]
      TCP    10.x.x.x:64787        
    10.x.x.x:389           ESTABLISHED     1656
     [DFSRs.exe]
      TCP    10.x.x.x:64795        
    10.x.x.x:389           ESTABLISHED     2104
    Receiving Member:
    [DFSRs.exe]
      TCP    10.x.x.x:56683        
    10.x.x.x:389           ESTABLISHED     7472
     [DFSRs.exe]
      TCP    10.x.x.x:57625        
    10.x.x.x:54886         ESTABLISHED     2808
    [DFSRs.exe]
      TCP    10.x.x.x:61759        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61760        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61763        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61764        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61770        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61771        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61774        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61775        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61776        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61777        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61778        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61779        
    10.x.x.x:57625         TIME_WAIT       0
      TCP    10.x.x.x:61784        
    10.x.x.x:52757         ESTABLISHED     7472
    [DFSRs.exe]
      TCP    10.x.x.x:63661        
    10.x.x.x:63781         ESTABLISHED     4880
    ------------------------------more troubleshooting--------------------------
    -Increased Staging to 32GB
    -Opened the ADSIedit.msc console to verify the "Authenticated Users" is set with the default READ permission on the following object:
    a. The computer object of the DFS server
    b. The DFSR-LocalSettings object under the DFS server computer object
    -Ran
    ping <var>10.x.x.x</var> -f -l 1472 and got replies back from both servers
    -AD replication is successful on all partners
    -Nslookup is working so DNS is working
    -Updated NIC drivers on both servers
    - I ran the following to set the Primary Member:
    dfsradmin Membership Set /RGName:<replication group name> /RFName:<replicated folder name> /MemName:<primary member> /IsPrimary:True
    Then Dfsrdiag Pollad /Member:<member name>
    I'm seeing these errors in the dfsr logs:
    20141014 19:28:17.746 9116 SRTR   957 [WARN] SERVER_EstablishSession Failed to establish a replicated folder session. connId:{45C8C309-4EDD-459A-A0BB-4C5FACD97D44} csId:{7AC7917F-F96F-411B-A4D8-6BB303B3C813}
    Error:
    + [Error:9051(0x235b) UpstreamTransport::EstablishSession upstreamtransport.cpp:808 9116 C The content set is not ready]
    + [Error:9051(0x235b) OutConnection::EstablishSession outconnection.cpp:532 9116 C The content set is not ready]
    + [Error:9051(0x235b) OutConnection::EstablishSession outconnection.cpp:471 9116 C The content set is not ready]
    ---------------------------------------more troubleshooting-----------------------------
    I've done a lot of research on the Internet and most of it is pointing to the same stuff I've tried.  Does anyone have any other suggestions?  Maybe I need to look somewhere
    else on the server side or firewall side? 
    I tried replicating from a 2012 R2 server to another 2012 server and am getting the same events in the event log so maybe it's not a server issue. 
    Some other things I'm wondering:
    -Could it be the speed of the NICs?  Server A is a 2012 Server that has Hyper-V installed.  NIC teaming was initially setup and since Hyper-V is installed the NIC is a "vEthernet
    (Microsoft Network Adapter Multiplexor Driver Virtual Switch) running at a speed of 10.0Gbps whereas Server B is running a single NIC at 1.0Gbps
    -Could occasional ping timeout's cause the issue?  From time to time I get a timeout but it's not as often as the events I'm seeing.  I'm getting 53ms pings.  The folder
    is only 3 GB so it shouldn't take that long to replicate but it's been days.  The schedule I have set for replication is mostly all day except for our backup times which start at 11pm-5am.  Throughout the rest of the time I have it set anywhere from
    4Mbps to 64 Kbps.  Server A is on a 5mb circuit and Server B is on a 10mb circuit. 

    I'm seeing the same errors, all servers are running 2008 R2 x64. Across multiple sites, VPN is steady and reliably.
    185 events from 12:28:21 to 12:49:25
    Events are for all five servers (one per office, five total offices, no two in the same city, across three states).
    Events are not limited to one replication group. I have quite a few replication groups, so I don't know for sure but I'm running under the reasonable assumption that none are spared.
    Reminder from original post (and also, yes, same for me), the error is: Error: 1726 (The remote procedure call failed.)
    Some way to figure out what code triggers an Event ID 5014, and what code therein specifies an Error 1726, would extremely helpful. Trying random command line/registry changes on live servers is exceptionally unappealing.
    Side note, 1726 is referenced here:
    https://support.microsoft.com/kb/976442?wa=wsignin1.0
    But it says, "This RPC connection problem may be caused by an unstable WAN connection." I don't believe this is the case for my system.
    It also says...
    For most RPC connection problems, the DFS Replication service will try to obtain the files again without logging a warning or an error in the DFS Replication log. You can capture the network trace to determine whether the cause of the problem is at the network
    layer. To examine the TCP ports that the DFS Replication service is using on replication partners, run the following command in a
    Command Prompt window:
    NETSTAT –ANOBP TCP
    This returns all open TCP connections. The connections in question are "DFSRs.exe", which the command won't let you filter for.
    Instead, I used the NETSTAT command as advertised, dumping output to info.txt:
    NETSTAT -ANOBP TCP >> X:\info.txt
    Then I opened Excel and manually opened the .TXT for the open wizard. I chose fixed-width fields based on the first row for each result, and then added a column:
    =IF(A3="Can not", "Can not obtain ownership information", IF(LEFT(A3,1) = "[", A3&B3&C3, ""))
    Dragging this down through the entire file let me see that row (Row F) as the file name. Some anomalies were present but none impacted DFSrs.exe results.
    Finally, you can sort/filter (I sorted because I like being able to see everything, should I choose to) to get just the results you need, with the partial rows removed from the result set, or bumped to the end.
    My server had 125 connections open.
    That is a staggering number of connections to review, and I feel like I'm looking for a needle in a haystack.
    I'll see if I can find anything useful out, but a better solution would be most wonderful.

  • Stored procedure call returns null result set when using temp table in sp!

    Here's a really odd problem...
    SQL Server stored procedure called sp_Test takes 1 input INT. Here is the code I call it with
    cStmt = connection.prepareCall("{call sp_Test(?)}");
    cStmt.setInt(1, 44);
    cStmt.execute();
    rs = cStmt.getResultSet();When the body of the stored proc is
    CREATE PROCEDURE sp_Test(@i_NodeID INT)
    AS
    BEGIN
      SELECT node_id FROM tbl_NavTree
    END
    GOthe query works and I get all node_id back in rs
    BUT when the body of the stored proc is
    CREATE PROCEDURE sp_Test(@i_NodeID INT)
    AS
    BEGIN
      CREATE TABLE #Descendants(
        descendant_id INT
      SELECT node_id FROM tbl_NavTree
      DROP TABLE #Descendants
    END
    GOThe rs comes back as NULL. Really really weird if you ask me. I also tried removing the DROP TABLE line just in case the SELECT had to be the last statement but still NULL.
    Final note is that BOTH the above stored proc bodies work when executed within SQL Server query analyser.
    Must be JDBC .. what can it be!??

    DROP TABLE #DescendantsMS SQL Server - right?
    Then don't drop the table.
    From the MS docs for "create table"
    Local temporary tables are visible only in the current session;
    A local temporary table created in a stored procedure is dropped automatically when the stored procedure completes. The table can be referenced by any nested stored procedures executed by the stored procedure that created the table. The table cannot be referenced by the process which called the stored procedure that created the table.

  • Stored procedure fails when called through jdbc

    Stored procedure returns incorrect results
    Hi!
    I am really puzzled about this and would really appreciate some help.
    We are migrating an servlet/jsp-application from websphere application server 3.5.3 to
    Oracle Application Server 10g. The backend is an Oracle 9i database server. Most of the application
    is build upon stored procedures in oracle. So the migration part is to make the servlets and JSPs
    to work in their new environment, creating deployment descriptors and so on.
    We are using JDeveloper 9.0.5.2 for development on Windows XP OS
    Java version is 1.4.2_03-b02 (ojvm)
    and also have an Oracle Application Server Enterprise Edition 9.0.4.0.0
    running on a W2K SP6. Java version is 1.4.2_03-b02, for development and testing.
    When running standalone (that comes width JDeveloper) OC4J the Java version is 1.4.2-b28 (client VM)
    The problem:
    When calling a stored procedure that calls another user defined procedure the returned result is wrong.
    The example snippet I've enclosed only success on my standalone OC4J.
    When I run the Java-app in JDeveloper using embedded OC4J it behaves incorrectly.
    When I run the Java-app deployed at the standalone OC4J that comes with JDeveloper it runs just fine.
    When I deploy the Java-app at the Oracle Application Server it behaves bad again.
    It looks like the procedure called by the procedure cannot execute correctly or that it got null value as in-parameter.
    What puzzles me is that this procedure did work correctly on websphere (JVM 1.2.2 and Oracle jdbc-drivers classes12.jar)
    and it does executes just fine on the standalone OC4J.
    I have tried different classes12.jar, ojdbc14.jar, different datasources (com.evermind.sql.DriverManagerDataSource,
    oracle.jdbc.pool.OracleConnectionCacheImpl) width no succes.
    /Mats Nord
    The code follows....
    - The java code
    CallableStatement cs =
         con.prepareCall("{ call oden.sp_tidGetProjForMember( ?, ?, ?, ?, ? ) }");
    cs.registerOutParameter(1, OracleTypes.CURSOR);
    cs.setLong(2, employeeNo);
    cs.setLong(3, projId);
    cs.setLong(4, actId);
    cs.setLong(5, period);
    cs.execute();
    ResultSet rs = (ResultSet) cs.getObject(1);
    while (rs.next()) {
         MyItem aItem =
              new MyItem(
                   Long.toString(employeeNo),
                   rs.getString(1),
                   rs.getString(2),
                   rs.getString(3),
                   rs.getString(4),
                   rs.getString(5),
                   rs.getString(6),
                   rs.getString(7),
                   rs.getString(8),     // (Actually a number). This row returns "0" but it shuold return a value greater than "0"
                   rs.getString(9));
              items.addElement(aItem);
    - The stored procedure:
    PROCEDURE sp_tidGetProjForMember (
    rs_Proj IN OUT report_types.weakCur -- recordset
    ,p_pnr IN V_ADMANV.anv_PNR%TYPE -- pnr projektmedlem, NUMBER(12)
    ,p_projid IN PROJ.PROJ_ID%TYPE -- projekt-id, NUMBER(5), kan vara tomt
    ,p_aktid IN AKT.AKT_ID%TYPE -- aktivitets-id, NUMBER(5), kan vara tomt
    ,p_yyyymm IN NUMBER) -- period NUMBER(6), YYYYMM, kan vara tomt
    &lt;&lt; Removed som lenghtly code from the post &gt;&gt;
    OPEN rs_Proj FOR
    SELECT
    DECODE(TIDPROJ.prj_status, v_skickad_id, 0, -- godkänd
         v_godknd_id, 0, -- godkänd
         NULL, 1, -- under bearbetning
                        v_ejgodk_id, 2, -- ej godkänd
                        v_undknd_id, 2 -- ej godkänd
              ) AS STATUS -- skickad 0: godkänd, 1: under bearbetning, 2: underkänd
         ,TIDPROJ.prj_projid
         ,PROJ.proj_namn
         ,V_ADMANV.anv_namn AS PLEDNAMN
         ,V_ADMANV.anv_PNR AS PLEDPNR
         ,TIDPROJ.prj_aktid
         ,AKT.AKT_NAMN AS AKTNAMN
    ,NVL(SUM(NVL(UTILITY.sp_ds2Decnum(TIDPROJ.prj_tid), 0)), 0) -- when calling the fuction UTILTY.sp_ds2Decnum
         ,NVL(TIDPROJKOMMENT.tpk_kommentar, ' ')
    FROM TIDPROJ
    &lt;&lt; Removed som lenghtly code from this post &gt;&gt;
    v_utdata := 'Recordset';
    Utility.sp_putLogg (v_spname, 0, v_indata, v_utdata, SQLCODE, SQLERRM); -- commits
    EXCEPTION
         WHEN OTHERS THEN
    v_utdata := 'FEL';
    Utility.sp_putLogg (v_spname, 0, v_indata, v_utdata, SQLCODE, SQLERRM); -- rollbacks
    END sp_tidGetProjForMember;

    Hi Kevin,
    Just an addition. To create SSIS package programmatically, please refer to the document:
    http://msdn.microsoft.com/en-us/library/ms345167.aspx 
    To implement dynamic column mapping through SSIS Script Component, please refer to:
    http://wikiprogrammer.wordpress.com/2011/04/08/dynamic-column-mapping-in-ssis-part-1/ 
    http://blog.quasarinc.com/ssis/best-solution-to-load-dynamically-change-csv-file-in-ssis-etl-package/ 
    Regards,
    Mike Yin
    TechNet Community Support

  • Remote Stored Procedure Call Dispatcher WEB WERVICE

    Hello all,
    Environment: Windows OS, Oracle 10g, mod_plsql
    I am looking for solutions to the following problem:
    A way to dispatch calls to stored procedures from client to server with a minimal impact on performance.
    We are looking at two possible solutions:
    1) Making a call to a Remote Stored Procedure Call Dispatcher (RSPCDispatcher) stored procedure through mod_plsql.
    2) Making a call to a Remote Stored Procedure Call Dispatcher (RSPCDispatcher) stored procedure through a web service.
    Solution 1) is not the preferred one as you may already know that mod_plsql will not be supported starting 12g.
    Solution 2) is the one we prefer as we believe that web services will be ever more supported in the future. When we move to 11g we may turn this web service into a native one (avoiding overhead in the OC4J for hosting the web service etc.).
    We are looking for code examples and information pointers of how we could implement this dispatcher as a stored procedure in a DB package. We know that the implementation should be similar to the one done for mod_plsql in the OWA schema but the code there is obfuscated, so we could not borrow ideas from there.
    We are not sure how to deal with the generalization of the above stated problem. We need to be able to pass to this dispatcher the stored procedure package and name we are invoking, ordered list of parameters (or parameters map), and the transport strategy (XML, JSON, etc.).
    Basically, we are notsure how to deal with the USING clause of the EXECUTE IMMEDIATE statement. We can dynamically generate the SQL statement corresponding to the stored procedure we want to call, but we are not sure how to bind the parameters we are passing?
    Also, we know that EXECUTE IMMEDIATE may be slow sometimes. So if could avoid it, this could further improve performance.
    Perhaps the run-time generalized stored procedure execution may not be what we are looking for?! Perhaps we should include several design-time steps?! What about a script that given a package name (or just a single stored procedure) would generate a wrapper package which stored procudures' names would correspond to their respective counterparts in the given package which would take two parameters - the list of parameters in some sort of format, and the transport (content delivery strategy) and would return the result in the given content delivery strategy?! This script may also define the XSD of the XML message a stored procedure is called with (the parameter map) as well as the XSD of the XML result the stored procedure returns. Also the script could generate client code with the given language strategy (Java, .NET, etc.) for calling the RSPCDispatcher web service.
    We request the following from the Oracle community folks:
    a) Please, give us any relevant information that could be helpful to resolve this problem.
    b) Any resource of how to inspect stored procedures in a package, its parameters, parameter types and direction (IN, OUT, or INOUT), etc.
    Thank you very much in advance.
    Regards,
    Georgi

    Hello all,
    Environment: Windows OS, Oracle 10g, mod_plsql
    I am looking for solutions to the following problem:
    A way to dispatch calls to stored procedures from client to server with a minimal impact on performance.
    We are looking at two possible solutions:
    1) Making a call to a Remote Stored Procedure Call Dispatcher (RSPCDispatcher) stored procedure through mod_plsql.
    2) Making a call to a Remote Stored Procedure Call Dispatcher (RSPCDispatcher) stored procedure through a web service.
    Solution 1) is not the preferred one as you may already know that mod_plsql will not be supported starting 12g.
    Solution 2) is the one we prefer as we believe that web services will be ever more supported in the future. When we move to 11g we may turn this web service into a native one (avoiding overhead in the OC4J for hosting the web service etc.).
    We are looking for code examples and information pointers of how we could implement this dispatcher as a stored procedure in a DB package. We know that the implementation should be similar to the one done for mod_plsql in the OWA schema but the code there is obfuscated, so we could not borrow ideas from there.
    We are not sure how to deal with the generalization of the above stated problem. We need to be able to pass to this dispatcher the stored procedure package and name we are invoking, ordered list of parameters (or parameters map), and the transport strategy (XML, JSON, etc.).
    Basically, we are notsure how to deal with the USING clause of the EXECUTE IMMEDIATE statement. We can dynamically generate the SQL statement corresponding to the stored procedure we want to call, but we are not sure how to bind the parameters we are passing?
    Also, we know that EXECUTE IMMEDIATE may be slow sometimes. So if could avoid it, this could further improve performance.
    Perhaps the run-time generalized stored procedure execution may not be what we are looking for?! Perhaps we should include several design-time steps?! What about a script that given a package name (or just a single stored procedure) would generate a wrapper package which stored procudures' names would correspond to their respective counterparts in the given package which would take two parameters - the list of parameters in some sort of format, and the transport (content delivery strategy) and would return the result in the given content delivery strategy?! This script may also define the XSD of the XML message a stored procedure is called with (the parameter map) as well as the XSD of the XML result the stored procedure returns. Also the script could generate client code with the given language strategy (Java, .NET, etc.) for calling the RSPCDispatcher web service.
    We request the following from the Oracle community folks:
    a) Please, give us any relevant information that could be helpful to resolve this problem.
    b) Any resource of how to inspect stored procedures in a package, its parameters, parameter types and direction (IN, OUT, or INOUT), etc.
    Thank you very much in advance.
    Regards,
    Georgi

  • Java2 SDK SEv1.4.1_01-Win Install Failure - remote procedure call

    Whenever I try to install the J2 SDK 1.4.1 on Windows XP Pro, everything works til the actual install is supposed to start. It just hangs there. When I hit the Cancel button, nothing happens; so I have to use task manager to cancel it. Afterward a small window with a message saying "An error occurred while launching the setup. The remote procedure call failed". I found a similar posting last spring for XP & J2 SDK 1.4.0, but there was no resolution posted. Does anybody know what the problem is?

    I would be very interested in a solution for this problem as well. I get father. The installer runs all the way through until it is done (100%). But it does not complete and hangs. If I cancel install the error dialog with the following message. "An error occurred while launching the setup. The remote procedure call failed." appears. This is also an Windows XP Pro machine.

  • Store procedure call to fetch data in JDBC sender adapter

    Hi guys,
    I have to fetch data from a Oracle server through JDBC adpater.
    the partner has in place some store procedure that have to be used with this purpose.
    But al the time I try to call a store procedure I got error that variables are not binded.
    I fill up the query sql statement field with following text
    call <store procedure name> (v1 OUT VARCHAR2, v2 in varchar2)
    Does anyone know the syntax to access such store procedure within jdbc adapter?
    As far as I know the jdbc call the store procedure with Callable statement but the paremeters need to be linked to datatype,but here I do not see such possibility.

    HI
    A stored procedure is a subroutine available to applications accessing a relational database system. Stored procedures (sometimes called a sproc or SP) are actually stored in the database data dictionary.
    Typical uses for stored procedures include data validation (integrated into the database) or access control mechanisms. Furthermore, stored procedures are used to consolidate and centralize logic that was originally implemented in applications. Large or complex processing that might require the execution of several SQL statements is moved into stored procedures and all applications call the procedures only.
    Stored procedures are similar to user-defined functions (UDFs). The major difference is that UDFs can be used like any other expression within SQL statements, whereas stored procedures must be invoked using the CALL statement
    Stored procedures can return result sets, i.e. the results of a SELECT statement. Such result sets can be processed using cursors by other stored procedures by associating a result set locator, or by applications. Stored procedures may also contain declared variables for processing data and cursors that allow it to loop through multiple rows in a table. The standard Structured Query Language provides IF, WHILE, LOOP, REPEAT, CASE statements, and more. Stored procedures can receive variables, return results or modify variables and return them, depending on how and where the variable is declared.
    http://help.sap.com/saphelp_nw04/helpdata/en/1d/756b3c0d592c7fe10000000a11405a/content.htm
    One of the usage is to prevent the query to directly write to the database
    http://en.wikipedia.org/wiki/Stored_procedure
    Check these:
    http://help.sap.com/saphelp_nw04s/helpdata/en/b0/676b3c255b1475e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/4d/8c103e05df2e4b95cbcc68fed61705/frameset.htm
    Integration with Databases made easy – Part 1.
    JDBC Stored Procedures
    http://help.sap.com/saphelp_nw04/helpdata/en/45/023c41325fa831e10000000a1550b0/frameset.htm
    Calling stored procs in MaxDb using SAP Xi
    cheers

  • How to use Stored Procedure Call in Sender JDBC adapter

    Hi All,
             Could someone send me a blog on how to use Stored Procedure call in Sender JDBC adapter?
    Xier

    Hi Xler
    refer these links
    /people/yining.mao/blog/2006/09/13/tips-and-tutorial-for-sender-jdbc-adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    Also, you can check Sriram's blog for executing Stored Procedures,
    /people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi
    /people/jegathees.waran/blog/2007/03/02/oracle-table-functions-and-jdbc-sender-adapter
    This blog might be helpfull on stored procedures for JDBC
    JDBC Stored Procedures
    /people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures
    Please go through these threads and see if it helps...
    Re: How to execute Stored Procedure?
    Re: Problem with JDBC stored procedure
    Thnaks !!

  • WCF OData Service stored procedure call generates "Operation could destabilize the runtime" error with $select option

    I've been trying to call a stored procedure through Entity Framework and WCF Data Services (OData). It returns an entity not a complex type. Following walkthroughs found all over the web, I came up with this code inside my service:
    [WebGet]
    public IQueryable<Entity> GetEntitiesByParameterId(int parameterId)
    return CurrentDataSource.GetEntitiesByParameterId(parameterId).AsQueryable();
    Calling the proc this way: ~WcfService.svc/GetEntitiesByParameterId?parameterId=1 executes
    the stored procedure and returns entities that should be returned. No problem there.
    Everything works well until I try to use $select OData option ie. ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$select=name.
    Upon debugging, the method above runs without any error but it returns an Operation could destabilize the runtime error upon reaching the
    client. After so much research, apparently it is a very general error pointing to a lot of different causes. I haven't found one that really matches my particular problem. Closest are 
    http://stackoverflow.com/questions/378895/operation-could-destabilize-the-runtime
    https://social.msdn.microsoft.com/Forums/en-US/d2fb4767-dc09-4879-a62a-5b2ce96c4465/for-some-columns-entity-properties-executestorequery-failed-with-error-operation-could?forum=adodotnetdataservices 
    but none of the solutions worked on my end.
    Also, from the second article above:
    This is a known limitation of WCF DS. ...
    Second is that some of the queries won't work correctly because LINQ to EF needs little different LINQ expressions than LINQ to Objects in some cases. Which is the problem you're seeing.
    It has been posted on 2012. If it its true, are there still no updates on this? And is there any other workaround to get the $select working on the stored proc call?
    What works:
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$top=1
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$skip-5
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$filter={filter query}
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$expand=SomeNavigationProperty
    What doesn't work:
    ~WcfService.svc/GetEntitiesByParameterId?parameterId=1&$select=name
    Tech details:
    EntityFramework 5, WCF Data Service 5.0, OData V3
    *I've also tried upgrading to EF6 and WCF 5.6.2 and it still didn't work.
    Any help would be appreciated. Thanks!

    Someone from SO replied to my question there and said that $select is still not supported though I couldn't find any definitive documentation about it.
    From what I gather and observed, $select breaks the stored procedure call because it tries to alter the data shape already gotten from the database and attempts to return a dynamic entity instead. Something about the stored proc returning an ObjectResult might
    be messing it up. As I have said, these are merely my observations.
    Workaround: I found a simple and elegant workaround for it though. Since my stored procedures are only getting data from the database and does
    not alter data in any way (INSERT, UPDATE, DELETE), I tried using table-valued functions that returns a table equivalent to the entity on my EF. I've found that calling this function on the Service Operation method returns an IQueryable<Entity> which
    is basically what is needed. $select also works now and so does other OData query options.
    Steps:
    Create a function on the database
    Update EDMX -> Add function
    Add new Function Import with Entity return type
    Create service operation in WCF Data Service that calls CurrentDataSource.<FunctionName>()
    Test in fiddler.
    CODES
    Database Function:
    CREATE FUNCTION GetEntities(@parameter)
    RETURN @entites TABLE(
    [Id] [int],
    [Name] [nvarchar](100),
    AS
    BEGIN
    INSERT INTO @entities
    SELECT [Id], [Name], ... FROM [EntityTable]
    RETURN
    END
    WCF:
    [WebGet]
    public IQueryable<Entity> GetEntity(int parameter)
    return CurrentDataSource.GetEntity(parameter);
    It doesn't really solve the stored procedure problem but I'm marking this as answer until someone can provide a better one as it does solve what I'm trying to do.
    Hope this helps others too. :)

  • Function and procedure call overhead in PL/SQL

    ( I come from a programming background - java/c++ etc and not much PL/SQL )
    Im trying to get a feel of how much extra cycles are spent if something is wrapped inside a function or procedure. I mean will it become considerably inefficient if the logic is within a function as opposed to be directly inline ?

    I did some timings a few years ago and found procedure calls to be slightly more efficient than function calls, presumably due to the fact that functions must pass values back through the function invocation and procedures don't. This may have changed in more recent releases but you can check it yourself.
    Set up a function and a procedure and use dbms_utility to get a starting and ending time marker (this will be the number of seconds from an arbitrary start point as microseconds; you will have to convert). Get a start time, loop through the calls a lot of times, get and end time, and subtract the end time from the start time.
    The prevailing though is that use functions to return values and procedures to perform actions. You can use functions in SQL if written correctly but not procedures.

Maybe you are looking for