Solved

J2EE troubleshotting, repeated executions of business logic..

Posted on 2004-09-20
7
232 Views
Last Modified: 2013-11-24
OC4J 9.0.4.0.0 (ejb2.0), Oracle9i, Swing client for a three tier setup...

- Problem has gotten worse over time, with code that have not been altered
- Problem persists in persistence(pun intented), we experience double insertions of data, for no apparent reason
- Business logic that should prevent this kind of behavior is not present or not executed
- User presses button once, 99% of the time only one set of inserts happen, sometimes two (few oocassions more, one time 130!!), swing client will act like 'hanging'
- Timestamp comparrision in one case revealed that there were 5 seconds between the dupes (equals 5 second client hang?)

hypothesis ; connections/operations succeed but return a false state, thus the application layer(JDBC driver?) repeats the task ? Other than that, a far fetched idea about a flawed connection pool in OC4J for transaction handling (wich does not explain the entire scenario) i am kinda blank on this one..
Of course the problem is non repeatable in 'safe envoriment' ... only happens in wild (read : production !!!!!)

Have ANYONE seens something like this before ? Im on the verge of blaming the hardware here .. nic's routers whatever ... i cant see what else ..
Funny thing is, that this HAS worked flawless for like 6mo's .. then suddenly... and in decreasing intervals...

Ideas ?

0
Comment
Question by:CyTG
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
7 Comments
 
LVL 35

Expert Comment

by:TimYates
ID: 12103221
I'd start by comparing every library on both the production machine and the dev machine...  You may find that there are 2 different versions of something low level...
0
 
LVL 35

Expert Comment

by:TimYates
ID: 12103233
Then I'd check that the database is not running out of ids/diskspace/log space, and see if there are any errors in any of the log files it may generate...
0
 
LVL 7

Expert Comment

by:bvanderveen
ID: 12105017
How long has it been since you've shut down your app server.  Sorry for a MS-like "solution", but I am wondering if some cache or other issues may have built up in you containers.
0
 
LVL 1

Author Comment

by:CyTG
ID: 12111186
TimYates -> i have copied the entire installation from production (oc4j) to ensure the exact same setup in the test envoriment .... still not repeatable. The database is supposedly doing fine, no warnings/errors in the logs ...

bvanderveen -> actually we've begun rebooting both database and application server each night .. problem persists(pun intented again)

Thanks for the suggestions though ! :o)

Regards.
0
 
LVL 35

Accepted Solution

by:
TimYates earned 500 total points
ID: 12111229
Are they both running the exact same versions of java...

I guess it's because the production site is getting used more than the development site...

What happens if you set up a JMeter task to hit your development site for a few hours...do you get the same bug exhibiting itself?

http://jakarta.apache.org/jmeter/
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers learn about the “for” loop and how it works in Java. By comparing it to the while loop learned before, viewers can make the transition easily. You will learn about the formatting of the for loop as we write a program that prints even numbers…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Suggested Courses

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question