Couldn't read from socket error: Is this a bug in Java?
I have been facing this grave problem for a long time now. After establishing a socket connection with some server:port say 207.123.17.20:1865, I get this error "Couldn't read from socket" as an IOException. I can neither read or send any packets to the server after receiving this error. On checking whether the socket connection is alive or not, I print socket.getAddress() and it returns me the ip of the server to which it is connected. The specification says that receiving this error means the socket was closed by the server. If it so then how I am able to print the server address after receiving this error? How can I get around this problem? Plz. help...
watertownjordan said:
If your computer (client) killed the connection, it should throw an error >pointing to the OS closing the connection. but what if my client app cntrl alt del while the server is waiting to here from the client.
my client may sit idle for hours and then contact again. i want to keep their socket connected but if they cntrl alt del then i want to close the socket so the thread on the server side can be exited.
the way i solved this was to send an "i'm still here" message to the serv in a timer every 10 seconds and set the time out on the server side to 30 seconds.
i used a syncronized boolean variable like so:
volatile private boolean out1busy = false;
private synchronized boolean getOut1busy(){
return out1busy;
private synchronized void setOut1busy(boolean on){
out1busy = on;
}then in the timer i do this
while (getOut1busy()) try { Thread.sleep(40); } catch (InterruptedException ex) {}
setOut1busy(true);
lobbyOut.println("-1");
setOut1busy(false);it seems to work fine but the loop using the thread.sleep does not seem right and i know very little about this all.
i'm basically asking the same thing as Chintan.Kanal
Is there any way I can test whether the socket connection is alive from the server side?
does my approach above have flaws.
again it seems to work but i am not very Java savy lol.
Similar Messages
-
No more data to read from socket error.
Oracle Version
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for Linux: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - ProductionI am trying a code like below
MERGE INTO TABLE1
( SELECT ...
FROM VIEW1 ) a UNPIVOT ("VALS" FOR cols IN ( .....columns to unpivot.......))
where a.column1='test'
) b ON ( a.id=b.id)
WHEN MATCHED THEN
UPDATE set a.name=b.name
when not matched then
insert (a.id,a.name) values ( b.id,b.name);This code is giving error : No more data to read from socket error.
But when I am trying
MERGE INTO TABLE1
( SELECT ...
FROM VIEW1*
where a.column1='test' ) a UNPIVOT ("VALS" FOR cols IN ( .....columns to unpivot.......))
) b ON ( a.id=b.id)
WHEN MATCHED THEN
UPDATE set a.name=b.name
when not matched then
insert (a.id,a.name) values ( b.id,b.name);It's working properly.
Any idea why I am getting error with code 1?
Edited by: Anupam_Halder on Oct 4, 2012 2:13 PMYou need to look for an Oracle specific error code and message. The error text you have posted does not seem to be an Oracle error.
The error however could result from an ORA-3113 end-of-file on communication channel.
This Oracle error means that the Oracle server process servicing your request (executing SQL or PL/SQL code) ran into a fatal error (potentially an Oracle bug). The server process then proceeds with a "crash dump" - writes an error to the database instance's alert log, writes a trace file and then terminiates abnormally.
It terminates without telling the client and without tearing down the tcp client-server connection. When the client then attempts to use this connection, the socket read fails. No data to read as the socket connection no longer exists.
But this is speculation - we need to see the actual Oracle error (from the server or from the client driver). And you seem to be using an Oracle client that suppresses Oracle error codes and text. Which places a serious question mark over the actual usability of such client s/w for Oracle client-server. -
ORA-17410: No more data to read from socket error
Hi
iam getting "No more data to read from socket error" on tomcat screen.
I have tried to explain the scenario, thats why it looks lengthy.
Any help is appreciated.
The application is calling a procedure which inturn tries to load class files and this error comes.
The database is on Oracle 9i (9.2.0.5) and we maintain it as a standby database.
Steps taken to create the standby database.
1. I have taken the cold backup of production database and copied it to Standby server
2. Created the oracle service on the Standby server. created the pfile and pwd file
3. Get the database to Nomount
4. recreate the controlfile
5. once in mount state, archive logs are copied from production and applied using
" recover database using backup controlfile"
This database was opened and started getting errors on tomcat screen.
Following are the things i tried to resolve the error:
1. I have put the latest JDBC drivers on oracle as well as at application end.
2. i can see all java files in Enterprise Manager on the Host Machine.
But through TOAD when i go to "Schema Browser" of "SYS" there are no java
files under "java tab" its empty.
3. I have run
C:\oracle\ora92\javavm\install\ initjvm1.sql
and few other java related scripts from "RDBMS" folder.
4. I have check listener config . Tried restarting the listener followed by starting the database.
I think there could be some connectivity issue or is there any parameter which needs to be set.
I would really appreciate any help.
Thanks,
JerryI am not very sure but can u do this on Standby Server? Looks like queries are only allowed on standby server in 11g.
regards
Pravin -
'No more data to read from socket' error connecting to Oracle 9i
Hi,
My Java app connecting to Oracle 9i gets an error: No more data to read from socket.
Application host is running oraClient805 and JDK1.3.1_06 SE
Connection string jdbc:oracle:thin:@myhost:1521:mysid worked fine connecting to the Oracle 8 version.
I've checked tnsnames.ora, tried tnsping util to Ora 9i, it's OK. As well I could connect directly through the SQL Worksheet.
Could anyone suggest what could be wrong or different to make a connection from Java app to Oracle 9i ?
I was advised to upgrade the driver, but I am not sure what do I need. I have classes102, classes111, and classes12 in the %ORACLE_HOME%\jdbc\lib\ directory. Do I miss something?
Thanks a lot.
TatianaI believe there might be problems using the older drivers with oracle 9. You might search this forum for more info.
-
'no more data to read from socket ' error while installing rcu
hi all,
while installing repository creation utility ,i faced 'no more data to read from socket' exactly at step 2(at this step ,i gave database connection details).could anyone please help me.is the local database you are trying to connect ?
check the network connection and database status. -
SQL error 17410 No more data to read from socket
Hi, I may have reached some stability limit of my JDBC thin driver, DB version and
the complexity of my use cases??
DB= 9.0.1.0
Jev/OC4J = 9.0.2
So this includes the JDBC thin driver included that looks like version; 9.0.2.7.99
It made no sense but changing a dynamic where clause being set onto a View over an Entity
like; vo.setWhereClause("myid = "+theID+" and someFk ="+theFkId);
To a dynamic where clause with bind params for efficiency:
vo.setWhereClause("myid = :1 and someFk = :2");
vo.setWhereClauseParam(0, theId);
vo.setWhereClauseParam(1, theFkId);
I checked that my bind variables are same data type as what's declared in the Entity.
This intermitantly causes:
JBO-26066, which is a wrapper over SQLException 17410 No more data from socket
Deep into the stack trace are unmarshalUB1(MARengine.java) ...
leading me to believe this isn't my code but a bug/stress issue with the driver.
Any thoughts?
curtSteve et al,
I'd like to re-ask does it make sense what I've done?
A standard VO over an Entity with no where clause.
vo.setWhereClause ("myId = :1 and myTypeCd = :2");
vo.setWhereClauseParam(0, "123")
vo.setWhereClauseParam(1, new Integer("1"));
If this makes sense and should work, then I'd like to debug why for me it throws this No more data to
read from socket error..
Nothing obvious turns up in the BugDB for this related to bind variables and JDBC based on what you've described so far. An unscientific test would be to download the latest 9.2 JDBC driver and try that to see if the problem persists.I downloaded the latest 9.2 -g debug drivers and got this interesting trace:
DRVR OPER OracleConnection.getDefaultFixedString() returning false
DRVR OPER ResultSetUtil.needIdentifier(typeCode=1): return: false
DRVR SQLS Input SQL: "SELECT JotfObligationsSum.UNO#, JotfObligationsSum.OBLIGATION_BALANCE, JotfObligationsSum.OBLIGATION_TYPE_CD, JotfObligationsSum.ENTERED_DT, JotfObligationsSum.RECORD_VERSION, JotfObligationsSum.ENTERED_BY, JotfObligationsSum.ROWID FROM JOTF_OBLIGATIONS_SUM JotfObligationsSum WHERE (JotfObligationsSum.Uno# = '1000270' and JotfObligationsSum.Obligation_Type_Cd=1)"
pStmt = conn.prepareStatement("SELECT JotfObligationsSum.UNO#, JotfObligationsSum.OBLIGATION_BALANCE, JotfObligationsSum.OBLIGATION_TYPE_CD, JotfObligationsSum.ENTERED_DT, JotfObligationsSum.RECORD_VERSION, JotfObligationsSum.ENTERED_BY, JotfObligationsSum.ROWID FROM JOTF_OBLIGATIONS_SUM JotfObligationsSum WHERE (JotfObligationsSum.Uno# = '1000270' and JotfObligationsSum.Obligation_Type_Cd=1)"); // JBO-JDBC-INTERACT
[803] (30) DRVR OPER OracleStatement.setFetchSize(rows=1)
Binding param 1: 1000270
[804] (0) DRVR OPER OraclePreparedStatement.setObject(paramIndex=1, object)
DRVR OPER OraclePreparedStatement.setObject(paramIndex=1, object, targetSqlType=12, scale=0)
DRVR OPER OraclePreparedStatement.setString(paramIndex=1, x=1000270)
Binding param 2: 1
[805] (0) DRVR OPER OraclePreparedStatement.setObject(paramIndex=2, object)
DRVR OPER OraclePreparedStatement.setObject(paramIndex=2, object, targetSqlType=4, scale=0)
DRVR OPER OraclePreparedStatement.setInt(paramIndex=2, x=1)
DRVR WARN DBError.findMessage(errNum, obj): returned No max length specified in defineColumnType
SQLWarning: reason(Warning: No max length specified in defineColumnType) SQLstate(null) vendor code(17108)
DRVR OPER OraclePreparedStatement.executeQuery()
DRVR OPER OraclePreparedStatement.executeUpdate()
DRVR OPER OracleConnection.getAutoCommit() returned false
DRVR WARN DBError.findMessage(errNum, obj): returned No more data to read from socket
SQLException: SQLState(null) vendor code(17410)
java.sql.SQLException: No more data to read from socketNotice that the first Select DRVR log shows the bind params already substituted?
what's the issue of no defined max length? That column is a Number(5) and the bind param is being
set from an Integer.
For the duplicate class issue, try searching the *.jpr file to see if somehow you have duplicate entries in there for the class it's complaining about. LOL, this is a good one. The first line in generated *Impl.java files is the package declaration. If
you bring up a java file and accidentally remove the first line, you'll get this odd error message.
Duplicate class found for abc.class
Thanks, curt -
Error code: 17410: No more data to read from socket
We have a strange issue.
We have a stored procedure which we invoke using JDBC code. Calls to this stored procedure runs fine on 2 databases but fails on the 3rd one. If we run the stored procedure using SQL Plus, it works fine.
SQLException being thrown is:
java.sql.SQLException: No more data to read from socket
Oracle database version is Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64bit Production in all three environments
While debugging the issue we figure the order of Java code made a difference while invoking the stored procedure that did not initially work.
Original Code:
ArrayDescriptor desc = ArrayDescriptor.createDescriptor( "SCHOOLLISTTYPE", conn );
StructDescriptor structdesc = StructDescriptor.createDescriptor( "SCHOOLCODEOBJ", conn );
Object[] attributes1 = { new String( "00131700" ), new String( "00" ) };
STRUCT empType1 = new STRUCT( structdesc, conn, attributes1 );
Object[] attributes2 = { new String( "00115900" ), new String( "01" ) };
STRUCT empType2 = new STRUCT( structdesc, conn, attributes2 );
Object[] attributes3 = { new String( "03078200" ), new String( "00" ) };
STRUCT empType3 = new STRUCT( structdesc, conn, attributes3 );
Object[] arrayElements = { empType1, empType2, empType3 };
ARRAY newArray = new ARRAY( desc, conn, arrayElements );
CallableStatement ps = conn.prepareCall( "{call AWSchools.Names (?, ?, ?)}" );
Throws the SQLException mentioned above.
But if I change the code to:
StructDescriptor structdesc = StructDescriptor.createDescriptor( "SCHOOLCODEOBJ", conn );
Object[] attributes1 = { new String( "00131700" ), new String( "00" ) };
STRUCT empType1 = new STRUCT( structdesc, conn, attributes1 );
Object[] attributes2 = { new String( "00115900" ), new String( "01" ) };
STRUCT empType2 = new STRUCT( structdesc, conn, attributes2 );
Object[] attributes3 = { new String( "03078200" ), new String( "00" ) };
STRUCT empType3 = new STRUCT( structdesc, conn, attributes3 );
Object[] arrayElements = { empType1, empType2, empType3 };
ArrayDescriptor desc = ArrayDescriptor.createDescriptor( "SCHOOLLISTTYPE", conn );
ARRAY newArray = new ARRAY( desc, conn, arrayElements );
CallableStatement ps = conn.prepareCall( "{call AWSchools.Names (?, ?, ?)}" );
code works fine.
This is strange as the ArrayDescriptor and StructDescriptor and independent objects till we invoke ARRAY newArray = new ARRAY( desc, conn, arrayElements );
Why would creating the ArrayDescriptor after we have done with arrayElements and desc make a difference?
And this happens only with one database server. The original code works fine in other 2 oracle database.
We did search in many forums about the error "No more data to read from socket". Seems this is a dark error which does not have any convincing answers.
Any help will be greatly appreciated.
Thanks.enable gateway tracing by setting HS_FDS_TRCE_LEVEL=255 in your DG4MSQL configuration file. Then open a new SQL*Plus window and execute:
select user from dual@<dg4msql db link>;
A trace file is generated in the ORACLE_HOME/dg4msql/trace directory. Post its content. -
JDBC thin driver 8.0.5 giving SQLException: No more data to read from socket
H/W : sun4u sparc SUNW,Ultra-Enterprise
OS : SunOS 5.6 Generic_105181-16
JDBC driver : 8.0.5.0.0 (Production Release)
Oracle Server : 8.0.5
I am getting the following error "SOMETIMES". I am using a connection pool to connect to the server using the thin driver. Can anyone tell me why is this happening and how can I fix it.
Thanks,
-Ramesh
SQL Statement: SELECT * FROM blah blah ...
SQLState: null
Message: No more data to read from socket
Vendor: 0
JDBC close connection failed.
java.sql.SQLException: No more data to read from socket
URL=jdbc racle:thin:@<host>:1521:<sid> user=<user_name>
nullHello,
When I change PLSExtProc to XE, I get a different exception:
java.sql.SQLException: ORA-00942: table or view does not exist
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:911)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1120)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:962)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1242)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3446)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3491)
at oracle.Main.main(Main.java:30)
SQLException: ORA-00942: table or view does not exist
thanks,
- Breno -
No more Data to read from socket from SQL Developer
Hi,
When I run the below query from SQL Developer, I get "No more data to be read from socket" error. The Oracle trace shows "Address not mapped".
select LDateDayPrec, LDateMonPrec, LDateOrder, LDateOrder_cd, LDateSep, LDateYearPrec,
LanguageCode, LanguageCode_cd, NegNumPres, NegNumPres_cd, NullNumPres, NullNumPres_cd,
NumDecimalChar, NumUnitSep, NumUnits0, NumUnits1, NumUnits2, NumUnits3, NumUnits4,
NumUnits5, ProfileName, SDateDayPrec, SDateMonPrec, SDateOrder, SDateOrder_cd, SDateSep,
SDateYearPrec, TimeFlg, WeekDayPres, WeekDayPres_cd, ZeroPres, ZeroPres_cd,Nls_profile_ver
FROM NLS_PROFILE WHERE NlsProfileId =1"
When I run the same query on the server through SQL Plus session, the result is getting fetched properly.
Next thing , when I select only 28 columns from the table in the above query, then also the row is getting fetched. I tried interchanging the columns. In that case also, the result is same. Also, when I do a "select * from NLS_PROFILE " , the row is getting fetched..
Can somebody help ?SQL> SELECT * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
PL/SQL Release 11.1.0.7.0 - Production
CORE 11.1.0.7.0 Production
TNS for Linux: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production
One more info: This table "NLS_PROFILE" is not on the DB where I am running the query. It is on a remote DB which is accessed via a synonym created over a DB link
Edited by: 840203 on Feb 28, 2011 9:57 PM -
Error on ASA5505: "IKE Receiver: Error reading from socket."
Hi,
I'm expecting a problem with the network of a customer.
He has one ASA5505 connected to 2 RV082 using VPN IPSec (1 top office and 2 remote sites).
Each sites have 2 internet ADSL providers: "Provider A" and "Provider B" for backup purpose.
The remote site 1 has the default connection using "Provider A" network on both sites (top office and remote site) and "Provider B" for backup purpose.
While remote site 2 has the default connection using "Provider B" network on both sites (top office and remote site) and "Provider A" for backup purpose.
(Kind of load balancing when all connections are working good)
When all "3 sites x 2 =" 6 connections are working, I doesn't have any problem and all is working good.
But since 2 weeks, the "Provider A" of the top office is disconnected: both remote site uses "Provider B" and are connected to the top office on
the "Provider B" connection. ("Provider A" is no longer used on every sites.)
This configuration works good until a short disconnection appear on "Provider B" connection on "Site 2".
Then I have many "IKE Receiver: Error reading from socket." on the ASA5505 syslog and the RV082 located on "Site 2" says it's connect but it isn't. (It is not possible to ping "site 2" from top office network.)
If I force this RV082 to reconnect, I can from the top office, ping "Site 2" and open a remote desktop session to the server located on "site 2".
But I cannot ping top office network from "Site 2" and I cannot open a remote desktop session to the server located on "top office"
(it's very strange I can ping from a A network to a B network but not from B to A).
Restart the RV082 of the "Site 2" and/or the ASA5505 does not fix the problem and I continue to get the IKE socket error message.
To fix the problem until next "Site 2" "Provider B" disconnection, I have to disconnect or restart the RV082 located on "Site 1" and then do the same to the RV082 located on "Site 2".
I use updated firmware: RV0XX-v4.1.1.01-sp.bin for both RV082 v3 and asa843-9-k8.bin for the ASA5505.
ASA routing part :
# 192.168.1.0 is the network of the top office
# 192.168.2.0 is the network of site 1
# 192.168.3.0 is the network of site 2
# 192.168.20.2 is the @IP of the "Provider A" internet router located on top office
# 192.168.21.2 is the @IP of the "Provider B" internet router located on top office
route outsideLB 0.0.0.0 0.0.0.0 192.168.20.2 128 track 1
route outsideFB 192.168.3.0 255.255.255.0 192.168.21.2 128 track 2
route outsideLB 192.168.2.0 255.255.255.0 192.168.20.2 128 track 3
route outsideFB 0.0.0.0 0.0.0.0 192.168.21.2 150
route outsideFB %Site2_ProviderB_PublicIP% 255.255.255.255 192.168.21.2 5
route outsideLB %Site1_ProviderA_PublicIP% 255.255.255.255 192.168.20.2 5
route outsideFB 192.168.2.0 255.255.255.0 192.168.21.2 150
route outsideLB 192.168.3.0 255.255.255.0 192.168.20.2 150
sla monitor 10
type echo protocol ipIcmpEcho %ProvideA_IP_of_a_SMTP_Server% interface outsideLB
frequency 5
sla monitor schedule 10 life forever start-time now
sla monitor 20
type echo protocol ipIcmpEcho %Site2_ProviderB_PublicIP% interface outsideFB
sla monitor schedule 20 life forever start-time now
sla monitor 30
type echo protocol ipIcmpEcho %Site1_ProviderA_PublicIP% interface outsideLB
sla monitor schedule 30 life forever start-time now
Thanks,
David
neitheisConnected means was ever connected.
Check whether isr is closed. If so, the server has disconnected/closed the connection. -
Error -no more data to read from socket vendor code 17410
Hi everyone
I have installed a gateway on my server. My oracle database 11.1.0.7 is running on windows server 2008 and i am trying to connect to sql server 2005.
After creating the database link when i test the database link i get this error
no more data to read from socket vendor code 17410
can you please suggest me how to get rid of this error?????
thanks a manyenable gateway tracing by setting HS_FDS_TRCE_LEVEL=255 in your DG4MSQL configuration file. Then open a new SQL*Plus window and execute:
select user from dual@<dg4msql db link>;
A trace file is generated in the ORACLE_HOME/dg4msql/trace directory. Post its content. -
SQLDeveloper tool script execution aborts with Error report: No more data to read from socket
Hello,
Strange behaviour of the SQLdeveloper tool while executing script with typical DDLs like:
Create Table,
Alter Table
Create Trigger ( use of :new and : old attributes in tehe body of trigger ).
Insert Into....
Scripts works ok from time to time.
But sometimes coincidentally aborts with the error :
Error report:
No more data to read from socket
Do not understand where is the problem.
Scripts works ok when executed in SQL*Plus on server ( where Oracle RDBMS resides ).
The version of SQLDeveloper is
Version 3.2.20.09 Build MAIN-09.87
The version of RDBMS is 11.2.0.2.0 .
Thanx for any reference or direction or hint for upgrade or experience.
Greetings,Welcome to the forum!
Please provide the 4 digit Oracle version (result of SELECT * FROM V$VERSION) for the source and target servers; 10g and 11g are not versions. You also mention sql developer so what is the exact version you are using?
>
If delete the "OF out_a.ALLOCATION_ID" of the for update clause of CURSOR exist_allocation, this prolbem will not happen, and the code is comple succesfully on sql developer for oracle 10g.
>
Please clarify what works and what doesn't work because your statements are both incorrect and misleading.
You can't delete the "OF out_a.ALLOCATION_ID" of the for update clause or you would get a syntax error by leaving FOR UPDATE OF with nothing specified after it.
Also you original statement said
>
But when compile a package which is fine on oracle 10g
>
But now you say that if you delete the "OF..." the problem doesn't happen and the code compiles on 10g.
Does the original code compile on 10g or not? Does it compile on 11g or not? After the original code is migrated to 11g does it compile? That is, the code is there can you manually compile it? -
Intermittant issue where certain portlets have the spinning wheel and error getting thrown in the log, and resulting in stuck threads, has anyone seen this?
Caused by: com.endeca.navigation.ENEConnectionException: Error reading from socket connection buffer.Connection reset
at com.endeca.navigation.OptiInputBuffer.read(Unknown Source)
at com.endeca.navigation.OptiInputBuffer.readFully(Unknown Source)
at com.endeca.navigation.OptiInputBuffer.readUInt(Unknown Source)
at com.endeca.navigation.OptiInputBuffer.readLine(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.FormatCat(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.FormatCatsWithAncs(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.FormatCatGroup(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.FormatBin(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.FormatBinList(Unknown Source)
at com.endeca.navigation.OptiBinaryInterp.ParseBinaryNode(Unknown Source)
at com.endeca.navigation.OptiBackend.getNavigation(Unknown Source)
at com.endeca.navigation.HttpENEConnection.query(Unknown Source)
at com.endeca.portal.mdex.MDEXUtil.execute(MDEXUtil.java:433)
at com.endeca.portal.data.DataSource.execute(DataSource.java:546)Message appears in logs internmittantly during page rendering which has Breadcrumbs, Results Table, Guided Navigation portlets. There are Agraphs in front of several Dgraphs.
-
Error report:No more data to read from socket when compile package
We are going to migrate db from oracle 10g to oracle 11g. But when compile a package which is fine on oracle 10g, an exception "Error report:No more data to read from socket" throws on sql developer and break the connection. We have researched the issue and found if modify some code on a cursor, the issue will not happen.
code:
PROCEDURE DELETE_MANU_INTERV_BORROWS(
p_borrow_id IN NUMBER,
p_asset_id IN NUMBER,
p_nsb_coll_type IN VARCHAR2,
p_nsb_coll_code IN VARCHAR2,
p_branch_code IN VARCHAR2,
p_settle_date IN NUMBER,
p_trans_type IN VARCHAR2,
p_status OUT VARCHAR2,
p_shorts_cursor OUT SYS_REFCURSOR
IS
var_end_settle_date GEC_IM_ORDER.SETTLE_DATE%type;
CURSOR exist_allocation IS
SELECT out_a.ALLOCATION_ID FROM
GEC_ALLOCATION out_a,
GEC_BORROW b,
GEC_IM_ORDER o,
GEC_TRADE_COUNTRY gc,
(SELECT f.FUND_CD, f.BRANCH_CD, tc.TRADE_COUNTRY_CD, NVL(gc.COLLATERAL_CURRENCY_CD, gbk.COLLATERAL_CURRENCY_CD) as COLLATERAL_CURRENCY_CD
FROM GEC_FUND f
LEFT JOIN GEC_G1_BOOKING gbk ON f.fund_cd = gbk.fund_cd AND gbk.TRANSACTION_CD = 'G1L' AND gbk.POS_TYPE = 'NSB'
LEFT JOIN GEC_G1_COLLATERAL gc ON gc.G1_BOOKING_ID = gbk.G1_BOOKING_ID
LEFT JOIN GEC_TRADE_COUNTRY tc ON gc.TRADE_COUNTRY_CD = tc.TRADE_COUNTRY_CD
) loan_info
WHERE b.BORROW_ID = out_a.BORROW_ID AND
out_a.IM_ORDER_ID = o.IM_ORDER_ID AND
o.FUND_CD = loan_info.FUND_CD AND
o.ASSET_ID = p_asset_id AND
gc.TRADE_COUNTRY_CD = o.TRADE_COUNTRY_CD AND
o.TRANSACTION_CD = p_trans_type AND
loan_info.COLLATERAL_CURRENCY_CD = p_nsb_coll_code AND
loan_info.BRANCH_CD = p_branch_code AND
o.SETTLE_DATE >= p_settle_date AND
o.SETTLE_DATE <= var_end_settle_date AND
b.STATUS = GEC_CONSTANTS_PKG.C_BORROW_MANUAL
ORDER BY out_a.ALLOCATION_ID ASC
FOR UPDATE OF out_a.ALLOCATION_ID;
If delete the "OF out_a.ALLOCATION_ID" of the for update clause of CURSOR exist_allocation, this prolbem will not happen, and the code is comple succesfully on sql developer for oracle 10g.
Does anybody have any idea? I've googled the similer problems but still can't find a clue. I'll appreciate any help.Welcome to the forum!
Please provide the 4 digit Oracle version (result of SELECT * FROM V$VERSION) for the source and target servers; 10g and 11g are not versions. You also mention sql developer so what is the exact version you are using?
>
If delete the "OF out_a.ALLOCATION_ID" of the for update clause of CURSOR exist_allocation, this prolbem will not happen, and the code is comple succesfully on sql developer for oracle 10g.
>
Please clarify what works and what doesn't work because your statements are both incorrect and misleading.
You can't delete the "OF out_a.ALLOCATION_ID" of the for update clause or you would get a syntax error by leaving FOR UPDATE OF with nothing specified after it.
Also you original statement said
>
But when compile a package which is fine on oracle 10g
>
But now you say that if you delete the "OF..." the problem doesn't happen and the code compiles on 10g.
Does the original code compile on 10g or not? Does it compile on 11g or not? After the original code is migrated to 11g does it compile? That is, the code is there can you manually compile it? -
XI to jdbc error: No more data to read from socket
i have a XI to JDBC scenario, where a receiver JDBC communication channel sends a query to the database, i get an error in the response (from database) as:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'NAME' (structure 'STATEMENT'): java.sql.SQLException: No more data to read from socket</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>Hi Sudeep,
This error most likely occurs when you use DB connection pool, which I think is the case in XI. When the JDBC adapter tries to connect to the database and discovers that the connection has been timed out/lost, then this exception is generated. Please have a look of the connection settings of your JDBC adapter and also at the note 831162.
Cheers...
Vasu
<b>** REward POInts if found useful **</b>
Maybe you are looking for
-
ISE 1.2.1 - CLient certificate renewal and expiration
Hi all, Anyone had any luck setting up and getting this functionality working? I have set up the correct authentication and authorisation flows and all works well. My major issue is that it would appear as though apple iOS devices do not allow you to
-
hi friends, in third party order processing what is the need of creating purchase requisition, cant we create purchase order with out refrence to puchase requisition? Thanks and regards sudhakar
-
Can I install InDesign CS6 and still keep my InDesign CS5 active?
I have addons in InDesign CS5 that is not compatible with CS6. Can I buy an SC6 subscription (Adobe Creative Cloud) and keep my Adobe InDesign CS5 with addons active (and activated)??
-
Bug in Java objects not serializable
I plan to use the latest version TopLink 10.1.3.1.0 with Oracle Database 10g (10.2.x). Do I still have to use the "Type Conversion" mapping as I had to do in order to address the reported non-serializable bug exiting in TopLink (9.0.4.5). See the lin
-
The default save location in Mountain Lion appears to be iCloud. How can this be changed so that the default location is on the computer? David Amies