Jdb/java inconsistency
Hallo Forum,
Pardon me if this problem has already been addressed on this forum, but I couldn't find anything of any help, since I'm not certain what to search for.
I'm making changes to a multi-threaded server daemon not written by myself. This server interfaces with another server through WSDL-created stubs. When I run the daemon it throws a number of exceptions, but not when I run it through the jdb debugger. I use the exact call, just with java replaced by jdb. All source code is compiled with the debug flag on for both cases. This makes it really hard for me to debug. I suspect that it might be a thread problem, although I have no definite grounds for my suspicion. Has anyone ever come across something of this kind? Can someone tell me the the fundamental differences between java and jdb?
Any help will be greatly appreciated.
Regards
Pieter Rautenbach
Debuggers typically work by altering the code that is running.
By altering the code it changes what happens.
And break points stop a thread.
Either or both of those can change the behavior. And particularily the second if it is actually a thread problem.
Similar Messages
-
JDB shows inconsistent behaviour with JNI Based Programs.
package com.RJCBEmulator;
public class Testing
public static void main(String[] args) {
System.out.println("Start");
NativeObject myClass = new NativeObject();
System.out.println("Second line main" );
myClass.printInfo();
public class NativeObject {
static
System.loadLibrary("RJCBEmulator");
public NativeObject()
nativeHandle = InitializeNative(1);
public native long InitializeNative(int nClassId);
public void printInfo()
System.out.println( "Successful" );
public long nativeHandle;
JNIEXPORT jlong JNICALL Java_com_RJCBEmulator_NativeObject_InitializeNative(JNIEnv *env, jobject obj, jint jnIID)
printf( "Inside InitializeNative\n");
jlong retVal;
switch( jnIID )
case 1 :
// do something
break;
case 2 :
// do something
break;
return 999;
when executed this program with java, I get this trace.
Start
Inside InitializeNative
Second line main
Successful
and when running the same program in jdb, I get the following trace
Start
Second line main
Successful
Inside InitializeNative
I am using jre1.4.1, I tried it with 1.3.1 and it works. Looks like JNI code is getting executed on a separate thread in JDB based on jre1.4.1.
Is there anybody who is facing this problem? Is there a workaround?Start by testing your application using J2SE 1.4.1
(or the latest release available to you) and adding
"-Xcheck:jni" to the command line. This will perform
extra run-time checking on all JNI calls.
I don't
just want to see what native code parts that is
entered, I also want to be able to set breakpoints in
the native code (C code).There are debuggers that can work with both Java Language
and native code, but they need native support (in addition
to the Java Platform Debugger Architecture [JPDA]) to do it.
One example (on Solaris) is the latest release of dbx.
For more information, take a look at:
http://wwws.sun.com/software/sundev/suncc/documentation/mr/READMEs/dbx.html#new -
We are using Oracle 8i with the jdbc driver. We have trouble with storing a blob in the database when it is larger than the chunksize using the jdbc interface for PreparedStatement.set
Code that stores only smaller blobs :
InputStream bais = new ByteArrayInputStream(value);
PreparedStatement pstmt = con.prepareStatement("INSERT INTO " + tableName + " VALUE (? ) " );
pstmt.setBinaryStream(1, bais, value.length );
pstmt.executeUpdate();
Code that works:
oracle.sql.BLOB myBlob = ((OracleResultSet) rs).getBLOB( columnName);
OutputStream outStream = myBlob.getBinaryOutputStream(); outStream.write(value, 0, value.length);outStream.flush();
outStream.close();
nullI don't know the answer, sorry. This is the jdb (java debugger) tool forum.
You might want to post your question over on the JDBC forum.
http://forum.java.sun.com/forum.jsp?forum=48 -
How can an client-applet connect to server-DB?
as the subject.
I want the applet@client-side connect to DataBase@server-side,
I am using Tomcat as engine & JDBC-mysql as tools
where should the jdbc class placed in? WEB-INF/classes ? WEB-INF/lib ?? or others?
now i am facing the problem that the applet seems cannot access WEB-INF and cannot locate the jdbc driver.
could anybody give me some hints?
thank you very muchHello
I don't know the answer, sorry. This is the jdb (java debugger) tool forum.
You might want to post your question over on the JDBC forum.
Try this link:
http://forum.java.sun.com/forum.jsp?forum=48 -
After we upgrade to 4.0.71 from 3.0, we see multiple file handlers are opened for the last jdb file. We have 100+ clients and each clients have their own environment, thus caused us top the file handler limit on linux.
We are using
OS: Linux 2.6.18-92.1.6.el5 #1 SMP Fri Jun 20 02:36:06 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux
The environment is writable.
I would like to confirm if this is related to the issue fixed in 4.0.92:
Fix a problem where cleaned and deleted log files could accumulate in the log cleaner's backlog, or list of files to be cleaned. This occurs when multiple cleaner threads are configured. The impacts of this problem are:
1. The EnvironmentStats.getCleanerBacklog stat is incorrect, which could lead the application to unnecessarily increase the number of cleaner threads.
2.
3. If EnvironmentConfig.CLEANER_MAX_BATCH_FILES is set to a non-zero value, log cleaning is disabled when the number of deleted files in the backlog reaches this limit.
[#18179]
or is another bug or expected behavior.
To be specific:
I ran the lsof for the berkeley DB directory:
java 13665 mybuys 147r REG 253,0 141869 25927939 /berkeley-db/00000000.jdb
java 13665 mybuys 148r REG 253,0 141869 25927939 /berkeley-db/00000000.jdb
java 13665 mybuys 279rw REG 253,0 0 25927936 /berkeley-db/je.info.0.lck
java 13665 mybuys 280w REG 253,0 0 25927937 /berkeley-db/je.info.0
java 13665 mybuys 281uw REG 253,0 0 25927938 /berkeley-db/je.lck
java 13665 mybuys 282r REG 253,0 141869 25927939 /berkeley-db//00000000.jdb
and note that there are 3 instances of 00000000.jdb. I only see one file hander to this file when server just restart. We have a periodical process to refresh the Berkeley DB from data feed, and we see two handler increased in each refresh. The environment handler, entityStore, and primaryIndex are all singleton per client.
Can someone explain why there is a need to have multiple hanlders opened for one jdb file (and seems always the last one). Is there a workaround with it.
Edited by: JoshWo on Mar 2, 2010 3:14 PMEverything you asked about is per environment, not per environment handle. In general, we never allocate expensive resources like file handles for each environment handle.
For us, it is not critical to have many file handlers but we just need to be able to estimate before deployment so OS limit can be set correctly (I believe the max is 40K per process on Linux). Any formula to publish?For any environment:
<li> Read-only handles: You can set the maximum to 3, but that is the smallest maximum you can specify. If you only have one log file then only one handle will be open. But if you have 3 log files, then 3 file handles may be opened.
<li> je.lck: 1 handle is always open.
For a read-write environment, there are the following 3 additional handles (added to the above):
<li> Write handle: 1 handle for writing.
<li> Fsync handle: 1 handle for fsync.
<li> je.lck: 1 additional handle for exclusive locking.
Also, you mentioned "maximum number of open-for-read handles is reached". Can you point a documentation link on this parameter or elaborate more here? Is it per environment handler or per environment?EnvironmentConfig.LOG_FILE_CACHE_SIZE is in the javadoc, in the je package.
So overall (if you set LOG_FILE_CACHE_SIZE to 3), you should assume:
-- 4 handles for a read-only environment
-- 7 handles for a read-write environment
I suggest you test this. I'm giving you these numbers by reading the code, not by testing.
--mark -
Hi everyone,
i want to know the string driver and url to connect jdbc to MS SQL Server 7.
example:
Class.forName(driver???);
Connection con = DriverManager.getConnection(url??);Hello
I don't know the answer, sorry. This is the jdb (java debugger) tool forum.
You might want to post your question over on the JDBC forum.
Try this link:
http://forum.java.sun.com/forum.jsp?forum=48 -
KM APIs for Reindexing a Index file
Hello,
Could anyone please let me know the if I need to Re-index (not increment index) a Index file using KM APIs are are there any APIs available, If so could anyone please let me know the same.
Regards,
Ronniee.Hello Detlev,
I have created a scheduled task for running a Index . I am getting the following error . I suppose this might be something related to the user permissions , but not sure.
what might be the actual cause ? and the resolution?
1.5 #005056B90041005A00000000000010000004BAB9A5EC5039#1331206422286#com.sapportals.wcm.service.scheduler.SchedulerService#sap.com/irj#com.sapportals.wcm.service.scheduler.SchedulerService#Guest#0##8EBC6ACB691211E1CD0B0000010A0752#8ebc6acb691211e1cd0b0000010a0752-0#8ebc6acb691211e1cd0b0000010a0752#Thread[ConfigurationEventDispatcher,5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Error##Java###inconsistent config: '' - #3#task#<package>.<class>#Failed to load component class: com.sapportals.wcm.service.scheduler.crt.SchedulerEntryProxy#
#1.5 #005056B90041002F00000026000010000004BAB9ADD8CCB9#1331206555224#com.sap.portal.roles.RoleNavigation#sap.com/irj#com.sap.portal.roles.RoleNavigation#<user>#83771##5B21750C691211E180220000010A0752#5b21750c691211e180220000010a0752-0#5b21750c691211e180220000010a0752#SAPEngine_Application_Thread[impl:3]_12##0#0#Error##Java###URL does not point to an object of type INavigationConnectorNode: portal_content/administrator/super_admin/super_admin_role/com.sap.portal.system_administration/com.sap.portal.system_admin_ws/com.sap.portal.system_configuration/com.sap.km.AdminConfig/com.sap.km.AdminSystemIndexes/relatedItems/RelatedLinks
[EXCEPTION]
#1#java.lang.ClassCastException: com.sapportals.portal.pcd.gl.PcdGlContext incompatible with com.sapportals.portal.navigation.AbstractNavigationConnectorNode
at com.sapportals.portal.pcd.pcm.roles.RoleNavigationConnector.getNodes(RoleNavigationConnector.java:288)
at com.sapportals.portal.pcd.pcm.roles.RoleNavigationConnector.getNode(RoleNavigationConnector.java:162)
at com.sapportals.portal.navigation.cache.connector.CacheNavigationConnector.getOriginalNode(CacheNavigationConnector.java:939)
at com.sapportals.portal.navigation.cache.connector.CacheNavigationConnector.getNode(CacheNavigationConnector.java:799)
at com.sapportals.portal.navigation.NavigationService.getNavNode(NavigationService.java:1634)
at com.sapportals.portal.navigation.NavigationService.getNode(NavigationService.java:581)
at com.sapportals.portal.navigation.cache.CachedNavigationService.getNode(CachedNavigationService.java:164)
at com.sapportals.portal.navigation.cache.CachedNavigationService.getNodes(CachedNavigationService.java:215)
at com.sapportals.portal.navigation.NavigationEventsHelperService.getNavNodesListForTarget(NavigationEventsHelperService.java:1023)
at com.sapportals.portal.navigation.NavigationEventsHelperService.getNavNodesListForPath(NavigationEventsHelperService.java:878)
at com.sapportals.portal.navigation.NavigationEventsHelperService.getCurrentContextNavNode(NavigationEventsHelperService.java:354)
at com.sapportals.portal.navigation.NavigationEventsHelperService.getNavNodesListForPath(NavigationEventsHelperService.java:863)
Regards,
Ronniee. -
Jdb fails to connect to running java application over sockets
I'm trying to use jdb to connect to a running instance of a java program.
If I use dt_shmem:
java -agentlib:jdwp=transport=dt_shmem,address=shmem,server=y,suspend=n JDBTest
jdb -attach shmemSet uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
Initializing jdb ...
quitworks fine.
If I use dt_socket, jdb crashes:
java -agentlib:jdwp=transport=dt_socket,address=9000,server=y,suspend=n JDBTestP:\workspace\JDBTest>jdb -attach 9000
java.io.IOException: shmemBase_attach failed: The system cannot find the file specified
at com.sun.tools.jdi.SharedMemoryTransportService.attach0(Native Method)
at com.sun.tools.jdi.SharedMemoryTransportService.attach(SharedMemoryTra
nsportService.java:90)
at com.sun.tools.jdi.GenericAttachingConnector.attach(GenericAttachingCo
nnector.java:98)
at com.sun.tools.jdi.SharedMemoryAttachingConnector.attach(SharedMemoryA
ttachingConnector.java:45)
at com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnectio
n.java:358)
at com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:1
68)
at com.sun.tools.example.debug.tty.Env.init(Env.java:63)
at com.sun.tools.example.debug.tty.TTY.main(TTY.java:964)
Fatal error:
Unable to attach to target VM.
It looks like jdb is trying to connect over shared memory instead of using sockets.
Trying jdb -attach localhost:9000 has the same effect.
I can however connect to the running Java program using the Eclipse debugger using a remote configuration.
What can I do that jdb will use sockets?
I'm using Windows 2000 SP4 and Java 1.5.0_07.
Many thanks in advance
Thomasjdb -help says:
-attach <address>
attach to a running VM at the specified address using standard connector
On Windows the 'standard', ie. default, connector uses the shared memory transport.
To connect to a socket, you need to tell jdb to use the socket attaching connector, ie
jdb -connect com.sun.jdi.SocketAttach:port=9000
It is hard to remember the names and params of all the connectors. You can do
jdb -listconnectors
to refresh your memory.
HTH. -
Problems with java constructor: "inconsistent data types" in SQL query
Hi,
I tried to define a type "point3d" with some member functions, implemented in java, in my database. Therefor I implemented a class Point3dj.java as you can see it below and loaded it with "loadjava -user ... -resolve -verbose Point3dj.java" into the database.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
package spatial.objects;
import java.sql.*;
public class Point3dj implements java.sql.SQLData {
public double x;
public double y;
public double z;
public void readSQL(SQLInput in, String type)
throws SQLException {
x = in.readDouble();
y = in.readDouble();
z = in.readDouble();
public void writeSQL(SQLOutput out)
throws SQLException {
out.writeDouble(x);
out.writeDouble(y);
out.writeDouble(z);
public String getSQLTypeName() throws SQLException {
return "Point3dj";
public Point3dj(double x, double y, double z)
this.x = x;
this.y = y;
this.z = z;
public static Point3dj create(double x, double y, double z)
return new Point3dj(x,y,z);
public double getNumber()
return Math.sqrt(this.x*this.x + this.y*this.y + this.z*this.z);
public static double getStaticNumber(double px, double py, double pz)
return Math.sqrt(px*px+py*py+pz*pz);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Additionally, I created the corresponding type in SQL by
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CREATE OR REPLACE TYPE point3dj AS OBJECT EXTERNAL NAME
'spatial.objects.Point3dj' LANGUAGE JAVA USING SQLDATA (
x FLOAT EXTERNAL NAME 'x',
y FLOAT EXTERNAL NAME 'y',
z FLOAT EXTERNAL NAME 'z',
MEMBER FUNCTION getNumber RETURN FLOAT
EXTERNAL NAME 'getNumber() return double',
STATIC FUNCTION getStaticNumber(xp FLOAT, yp FLOAT, zp FLOAT) RETURN FLOAT
EXTERNAL NAME 'getStaticNumber(double, double, double) return double')
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After that I tried some SQL commands:
create table pointsj of point3dj;
insert into pointsj values (point3dj(2,1,1));
SELECT x, a.getnumber() FROM pointsj a;Now, the problem:
Everything works fine, if I delete the constructor
public Point3dj(double x, double y, double z)
this.x = x;
this.y = y;
this.z = z;
in the java class, or if I replace it with a constructor that has no input arguments.
But with this few code lines in the java file, I get an error when executing the SQL command
SELECT x, a.getnumber() FROM pointsj a;The Error is:
"ORA-00932: inconsistent data types: an IN argument at position 1 that is an instance of an Oracle type convertible to an instance of a user defined Java class expected, an Oracle type that could not be converted to a java class received"
I think, there are some problems with the input argument of the constructor, but why? I don't need the constructor in SQL, but it is used by a routine of another java class, so I can't just delete it.
Can anybody help me? I would be very glad about that since I already tried a lot and also search in forums and so on, but wasn't successful up to new.
Thanks!Dear Avi,
This makes sense when it is a short code sample (and i think i've done that across various posts), but sometime this is too long to copy/paste, in these cases, i refer to the freely available code samples, as i did above on this forum; here is the quote.
Look at examples of VARRAY and Nested TABLES of scalar types in the code samples of my book (chapter 8) http://books.elsevier.com/us//digitalpress/us/subindex.asp?maintarget=companions/defaultindividual.asp&isbn=9781555583293&country=United+States&srccode=&ref=&subcode=&head=&pdf=&basiccode=&txtSearch=&SearchField=&operator=&order=&community=digitalpress
As you can see, i was not even asking people to buy the book, just telling them where to grab the code samples.
I appreciate your input on this and as always, your contribution to the forum, Kuassi -
Java.sql.SQLException: Internal Error: Inconsistent catalog view
Hi all,
I have an Oracle procedure defined like:
pkgoms.p_oms_audit ( in_tab_oms_audit in tab_oms_audit,out_status out number)
tab_oms_audit is a collection of t_oms_audit
Here is the structure for the type (with 16 fileds)
create or replace type t_oms_audit as object(
Username_ VARCHAR2(101),
d_Date_ Date,
<other fields>) ;
In my Java code I have:
// conn is the connections to db
oracle.sql.StructDescriptor structDesc = oracle.sql.StructDescriptor.createDescriptor("TAB_OMS_AUDIT", conn);
Object[] attributes = new Object[16];
// Fill out the array: attributes[] in the same structure that t_oms_audit is defined
// Receive the following error on the next line:
// java.sql.SQLException: Internal Error: Inconsistent catalog view
oracle.sql.STRUCT struct = new oracle.sql.STRUCT(structDesc, conn, attributes);
anOracleCallableStatement.setObject(1, struct, java.sql.Types.STRUCT);
anOracleCallableStatement.execute();I searched for the above error and the only thing I could find was that its a permission issue; I can execute select, update, insert, delete, ... on db, so not sure if its in fact a permission issue or I am doing sth. else wrong. Any help is greatly appreciated.Hi all
I have the same problem.
it's not a GRANT problem because in PL/SQL the object works fine.
JDBC Release problem?
Any help is greatly appreciated. -
How to debug Java adventure with jdb
Hi,
I'm learning J2ee and I'd like to use and debug
Java adventure. I tried to find some information but found nothing.
What I tried to debug , is to start the j2ee server by adding the following options into the bin/asadmin.bat file:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
This it doesn't work because the j2ee server is started with the javaw.exe virtual machine. So I'm stuck here.
My first question: 1- what visual debugger is great to debug J2ee apps ??
I'd like to known what are the steps to:
2- how to start the j2ee server in order to attach the jdb or a visual
debugger ?
3- when starting the j2ee server, what do i have to do in order to step
into the code source of Java adventure and follow function calls ?
4- how do I have to start the jdb to attach to the J2ee server ?
5- Any useful tip to debug J2ee apps ! :-)
Thanks in advance !
WaltereoHi,Hello
I'm learning J2ee and I'd like to use and debug
Java adventure. I tried to find some information but
found nothing.
What I tried to debug , is to start the j2ee server by
adding the following options into the bin/asadmin.bat
file:
-Xdebug
ug
-Xrunjdwp:transport=dt_socket,address=8000,server=y,sus
end=nThat looks OK.
This it doesn't work because the j2ee server is
started with the javaw.exe virtual machine. So I'm
stuck here.javaw.exe implies you are on a win32 machine. The default
debugging transport on win32 is shared memory... but you specify
a socket connection on the debugee command line above. This
means you need to specify sockets on the debugger side as well.
For example:
jdb -connect com.sun.jdi.SocketAttach:hostname=localhost,port=8000
Note the port number (8000) matches the value you specified
when starting the debugee.
>
My first question: 1- what visual debugger is great
to debug J2ee apps ??For a list of debugging tools, check this web page:
http://java.sun.com/products/jpda/using.html
Many of these products work well in a J2EE environment.
Most of them are either free, or come with an introductory
"try before you buy" offer.
I'd like to known what are the steps to:
2- how to start the j2ee server in order to attach
the jdb or a visual
debugger ?You are on the right track with the flags/options you
mentioned.
3- when starting the j2ee server, what do i have to
do in order to step
into the code source of Java adventure and follow
low function calls ?The code you want to examine needs to be compiled
with the "-g" flag added to the javac command line.
When -g is specified, javac will save information
in the .class files that is used later during debugging.
4- how do I have to start the jdb to attach to the
J2ee server ?See above...
For more coverage on this topic, refer to:
JPDA Connection and Invocation Details
http://java.sun.com/j2se/1.4.2/docs/guide/jpda/conninv.html
5- Any useful tip to debug J2ee apps ! :-)That is a bit outside the scope of this forum... sorry.
Any useful tips will depend on what J2EE app server you
are using. Most of the well-known servers come with
a debugging guide. For example, take a look at:
Debugging J2EE Applications in the SunOne Application Server
documentation:
http://docs.sun.com/source/817-2171-10/dgdebug.html
Thanks in advance !Best Regards... -
Error 'Inconsistent datatypes' with Java classes
Hi,
I have some Java classes loaded in Oracle 8.1.6, mapped as Object Types, so when I create one object from PL/SQL, JVM ought to create the matching Java object, communicating via the SQLData interface.
Unfortunately, after the code:
pippo:=OraMailer('mail.server.com','mymail');
that creates the PL/SQL object, any code that use member procedures or function wrapping instance methods of the Java class fails with the error 932: Inconsistent datatypes.
I looked for a mistake in my PL/SQL and Java code, but no error was found.
It is very important: help me!!!
ThxSo here is what you are doing:
ArrayList results = //get employees from database
ListIterator langIt = results.listIterator();
while (langIt.hasNext()) {
Employee emp = langIt.next();
String name2 = emp.getName();
String SSNo = emp.getSSNum();
results.add(name2);
results.add(SSNo);
}So you get a list or Employee objects, then you get an iterator over the list. For each Employee in the list you add the name and SSNo as Strings back to the same list. From the API for ConcurrentModificationException the exception can be thrown when you modify a collection while iterating over the collection - which is precisely what you are doing.
The ListIterator interface allows you to modify the list through its own methods. Try using:
langIt.add(name2);
langIt.add(SSNo);instead.
Why are you taking the name and SSNo out of the Employee object and placing them back in the same List anyway? That makes no sense to me. -
How to resolve the java.sql.SQLException: OALL8 is in an inconsistent state
Hi All,
I am getting the SQLException "java.sql.SQLException: OALL8 is in an inconsistent state." and in finally block while I am trying to execute another operation on the same database getting another exception "java.sql.SQLException: Io exception: Broken pipe".
I am using a connection from the connection pool configured in Oracle Application server. I am using the Oracle App server 10.1.3.4 and my database is Oracle Database 11g Enterprise Edition Release 11.1.0.7.0.
Any help in resolving this issue would really be appreciated.
Thank you.Hi,
What version of the driver are you using? The "OALL8 is in an inconsistent state" exception usually indicates a problem in the protocol. When this exception occurs the protocol is broken and the connection can't be used anymore. I would suggest that you try using the 11.2.0.1 JDBC driver that you can download from:
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html
Regards,
Jean -
Inconsistent java and sql object types
Hi,
I have run into error "Inconsistent java and sql object types"
while mapping a java class to a sql object type. The java class
is just a duplicate of sql data structure and I pretty much
follow the JDBC Developer's GUide's examples (20-43 to 20-45)
to create the mapping java class.
Any one runs into simliar problem or any clues?
Thanks,
Ed
Exception in thread "main" java.sql.SQLException: Inconsistent java and sql object types: InstantiationException:
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
at oracle.sql.STRUCT.toClass(STRUCT.java:433)
at oracle.sql.STRUCT.toJdbc(STRUCT.java:366)
at oracle.jdbc.oracore.OracleTypeUPT.unpickle80rec
(OracleTypeUPT.java:236)
at
oracle.jdbc.oracore.OracleTypeCOLLECTION.unpickle80rec_elems
(OracleTypeCOLLECTION.java:553)
at oracle.jdbc.oracore.OracleTypeCOLLECTION.unpickle80rec
(OracleTypeCOLLECTION.java:383)
at oracle.jdbc.oracore.OracleTypeCOLLECTION.unpickle80
(OracleTypeCOLLECTION.java:329)
at oracle.jdbc.oracore.OracleTypeCOLLECTION.unlinearize
(OracleTypeCOLLECTION.java:218)
at oracle.sql.ArrayDescriptor.toJavaArray
(ArrayDescriptor.java:501)
at oracle.sql.ARRAY.getArray(ARRAY.java:197)The safest way would be to use JPublisher to generate the type classes. In your application, you can just use the generated code to manipulate the object.
-
Jclient error: java.sql.SQLException: OALL8 is in an inconsistent state
Dear all,
who can help us about java.sql.SQLException: OALL8 is in an inconsistent state.
Our application system is build for Jdeveloper 10.1.2 with JClient+BC4J
and be deploy on 2-tier application architecture(through Web Start) , and the database is oracle 9.2.0.1
In sometime the application running, our user will got these error response message that is like following , please kindly give us a direction to solve this problem .
oracle.jbo.DMLException: JBO-26044: ¨ú±oµøÆ[ªíª«¥ó ReportPhraseBasicView1, ±Ôz¥y SELECT count(1) FROM (SELECT ReportPhraseBasic.HOSPITALCODE, ReportPhraseBasic.USERCODE, ReportPhraseBasic.PHRASECODE, ReportPhraseBasic.PHRASECONTEXT, ReportPhraseBasic.CREATED_BY, ReportPhraseBasic.CREATION_DATE, ReportPhraseBasic.LAST_UPDATED_BY, ReportPhraseBasic.LAST_UPDATE_DATE, ReportPhraseBasic.MARK FROM REPORT_PHRASE_BASIC ReportPhraseBasic WHERE (USERCODE = '006583') AND ( ( (ReportPhraseBasic.PHRASECODE LIKE '%') ) )) ªº¦ôp¸ê®Æ¦Cp¼Æ®Éµo¥Í¿ù»~.
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2101)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2043)
at oracle.jbo.server.QueryCollection.getEstimatedRowCount(QueryCollection.java:2170)
at oracle.jbo.server.ViewRowSetImpl.getEstimatedRowCount(ViewRowSetImpl.java:1824)
at oracle.jbo.server.ViewObjectImpl.getEstimatedRowCount(ViewObjectImpl.java:5624)
at oracle.adf.model.bc4j.DCJboDataControl.getEstimatedRowCount(DCJboDataControl.java:925)
at oracle.adf.model.binding.DCIteratorBinding.getEstimatedRowCount(DCIteratorBinding.java:2526)
at oracle.jbo.uicli.binding.JUCtrlRangeBinding.getEstimatedRowCount(JUCtrlRangeBinding.java:101)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.getRowCount(JUTableBinding.java:1099)
at oracle.jbo.uicli.jui.JUTableBinding.getRowCount(JUTableBinding.java:618)
at oracle.jbo.uicli.jui.JUTableSortModel.getRowCount(JUTableSortModel.java:560)
at javax.swing.JTable.getRowCount(Unknown Source)
at javax.swing.JTable.valueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.removeSelectionInterval(Unknown Source)
at javax.swing.DefaultListSelectionModel.clearSelection(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.clearSelection(JUTableSortModel.java:747)
at javax.swing.JTable.clearSelection(Unknown Source)
at javax.swing.JTable.tableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableSortModel.tableChanged(JUTableSortModel.java:177)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableDataChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.fireTableDataChangedRestoreSelection(JUTableBinding.java:763)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel._refreshLater(JUTableBinding.java:989)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.access$7000971(JUTableBinding.java:700)
at oracle.jbo.uicli.jui.JUTableBinding$1.run(JUTableBinding.java:940)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
## Detail 0 ##
java.sql.SQLException: OALL8 is in an inconsistent state.
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.T4C8Oall.init(T4C8Oall.java:308)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:166)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:661)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:893)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:693)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:988)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2884)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2925)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2083)
at oracle.jbo.server.ViewObjectImpl.getQueryHitCount(ViewObjectImpl.java:2043)
at oracle.jbo.server.QueryCollection.getEstimatedRowCount(QueryCollection.java:2170)
at oracle.jbo.server.ViewRowSetImpl.getEstimatedRowCount(ViewRowSetImpl.java:1824)
at oracle.jbo.server.ViewObjectImpl.getEstimatedRowCount(ViewObjectImpl.java:5624)
at oracle.adf.model.bc4j.DCJboDataControl.getEstimatedRowCount(DCJboDataControl.java:925)
at oracle.adf.model.binding.DCIteratorBinding.getEstimatedRowCount(DCIteratorBinding.java:2526)
at oracle.jbo.uicli.binding.JUCtrlRangeBinding.getEstimatedRowCount(JUCtrlRangeBinding.java:101)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.getRowCount(JUTableBinding.java:1099)
at oracle.jbo.uicli.jui.JUTableBinding.getRowCount(JUTableBinding.java:618)
at oracle.jbo.uicli.jui.JUTableSortModel.getRowCount(JUTableSortModel.java:560)
at javax.swing.JTable.getRowCount(Unknown Source)
at javax.swing.JTable.valueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at javax.swing.DefaultListSelectionModel.removeSelectionInterval(Unknown Source)
at javax.swing.DefaultListSelectionModel.clearSelection(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.clearSelection(JUTableSortModel.java:747)
at javax.swing.JTable.clearSelection(Unknown Source)
at javax.swing.JTable.tableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableSortModel.tableChanged(JUTableSortModel.java:177)
at javax.swing.table.AbstractTableModel.fireTableChanged(Unknown Source)
at javax.swing.table.AbstractTableModel.fireTableDataChanged(Unknown Source)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.fireTableDataChangedRestoreSelection(JUTableBinding.java:763)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel._refreshLater(JUTableBinding.java:989)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.access$7000971(JUTableBinding.java:700)
at oracle.jbo.uicli.jui.JUTableBinding$1.run(JUTableBinding.java:940)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
==============
oracle.jbo.SQLStmtException: JBO-27122: Protocol Violation: SELECT Reportbasic.HOSPITALCODE, Reportbasic.REPORTSEQNO, Reportbasic.VERSION, Reportbasic.EXAM, Reportbasic.IMPRESSION, Reportbasic.DICTATE_SEQ, Reportbasic.DICTATEDATE, Reportbasic.DICTATOR, Reportbasic.DICTATORNAME, Reportbasic.REPORTDATE, Reportbasic.REPORTDR_VS, Reportbasic.REPORTNAME_VS, Reportbasic.REPORTDR_RESIDENT, Reportbasic.REPORTNAME_RESIDENT, Reportbasic.REPORTDR_CONSIDER, Reportbasic.REPORTNAME_CONSIDER, Reportbasic.APPROVEDATE, Reportbasic.APPROVEDR, Reportbasic.APPROVENAME, Reportbasic.FINISH_FLAG, Reportbasic.OFFICIALFLAG, Reportbasic.EXAMTEXT, Reportbasic.IMPRESSIONTEXT, Reportbasic.STATUS, Reportbasic.TRANSMIT_NEEDED, Reportbasic.REMARK, Reportbasic.CREATED_BY, Reportbasic.CREATION_DATE, Reportbasic.LAST_UPDATED_BY, Reportbasic.LAST_UPDATE_DATE, Reportbasic.EDUCATIONTYPE, Reportbasic.EDUCATIONCODE, Reportbasic.CODINGOPER, Reportbasic.CODINGDATE, Reportbasic.ACCESSNO FROM REPORTBASIC Reportbasic WHERE Reportbasic.REPORTSEQNO = :1
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:774)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:547)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3422)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:663)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:617)
at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2593)
at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2850)
at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:1941)
at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4094)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3300)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyNavigation(ViewRowSetIteratorImpl.java:3418)
at oracle.jbo.server.ViewRowSetIteratorImpl.internalSetCurrentRow(ViewRowSetIteratorImpl.java:3192)
at oracle.jbo.server.ViewRowSetIteratorImpl.setCurrentRowAtRangeIndex(ViewRowSetIteratorImpl.java:998)
at oracle.jbo.server.ViewRowSetImpl.setCurrentRowAtRangeIndex(ViewRowSetImpl.java:2569)
at oracle.jbo.server.ViewObjectImpl.setCurrentRowAtRangeIndex(ViewObjectImpl.java:6186)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.valueChanged(JUTableBinding.java:1274)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.setValueIsAdjusting(JUTableSortModel.java:777)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.setValueIsAdjusting(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
## Detail 0 ##
java.sql.SQLException: ¹H¤Ï¨ó©w
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:161)
at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:884)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:642)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:791)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:912)
at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:693)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:988)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2884)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2925)
at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:691)
at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:547)
at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3422)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:663)
at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:617)
at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2593)
at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2850)
at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:1941)
at oracle.jbo.server.ViewRowSetImpl.refreshRowSet(ViewRowSetImpl.java:4094)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyDetailRowSets(ViewRowSetIteratorImpl.java:3300)
at oracle.jbo.server.ViewRowSetIteratorImpl.notifyNavigation(ViewRowSetIteratorImpl.java:3418)
at oracle.jbo.server.ViewRowSetIteratorImpl.internalSetCurrentRow(ViewRowSetIteratorImpl.java:3192)
at oracle.jbo.server.ViewRowSetIteratorImpl.setCurrentRowAtRangeIndex(ViewRowSetIteratorImpl.java:998)
at oracle.jbo.server.ViewRowSetImpl.setCurrentRowAtRangeIndex(ViewRowSetImpl.java:2569)
at oracle.jbo.server.ViewObjectImpl.setCurrentRowAtRangeIndex(ViewObjectImpl.java:6186)
at oracle.jbo.uicli.jui.JUTableBinding$JUTableModel.valueChanged(JUTableBinding.java:1274)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at oracle.jbo.uicli.jui.SortedListSelectionModel.setValueIsAdjusting(JUTableSortModel.java:777)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.setValueIsAdjusting(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)Seems its problem with the version of Oracle you are using ..See the following link,it provides you some additional info.
java.sql.SQLException: OALL8 is in an inconsistent state
Maybe you are looking for
-
App store update shows I can't update an app since my Apple ID is not associated with my account on Yosemite. How can I just force it to allow me to RE-BUY the app again since I don't even have it to update, but I want it? Currently, I even though I
-
My new tv needs to plug into an ethernet port for internet connectivity. I'm hoping it can plug into my TC however my TC is wirelessly connected to my current home network... how can i get this to work? TC version A1470 (i think, brand new) Many tha
-
I'm suddenly getting the error message: "We could not complete your iTunes Store request. The network connection was reset. Make sure your connection is active and try again". My connection is working - I am able to find this website and post this
-
When should I use "Optical Audio"?
Hello, I have the new (3rd Gen) Apple TV connected wirelessly to my home theater and HDTV. I have the HDMI cable connected to my surround-sound receiver. I was under the impression that the HDMI cable carries both sound AND audio. If this is the case
-
HELP! Ipod sync not performing properly. What can I do?
Yesterday, when I clicked my Itunes icon on my desktop a message came up about some kind of update. Itunes was going to be loading new formats and I was asked if I wanted to keep files sorted. I clicked yes and then continue. I noticed it was doing a