Slow down in database access
I have completed a project which automates the procesing of stock monitoring and billing ofacocacola stockist in my home town. The processor need in the machine is P4. I used JDK 1.4 with MS-Access (Office 2000) as backend. I have come across a problem which cannot be detected by me and the service engineers of system also. The problem is stated below.
(i) When i use the billing module of the project i cannot use the billing screen continuously more than 10 times. I am in need of reloading the software to start again.
(ii) All the modules get slow down when in use the software more than 45 minutes.
(iii) When the billing screen get slow an exception is thrown. The name of the exceptio is Event despatch thread queue exception.
I get this proplem when i use the part of the software which are connected to the database.
If i use the other parts of the software (non database activities)then there is no problem in using the software.
I used the same processing for a textile industry's stock monitoring system. There is no problem with the software.
Is there any timeout value set for the access database's connection or for the swing components.
Please consider my request and give suggestion as soon as possible.
Hi,
I think you try to establish many Connections to the Database, but you don`t close them. This can cause memory problems and the other thing is that your database has a limited number of possible open connections. So there are two ways to solve the problem:
(1) After using the Database, close the connection immediately in a finally block
(2) Reuse one (or more) open connections. This is also known as connection Pooling. The advantage of this solution is that the performance of your application will be better because the process of establishing a JDBC Connection has high cost !
Adrian Ofterdinger
Similar Messages
-
After I upgraded from Mountian Lion to Maverick (OS10.9) accessing files and directories on external drives slowed down by at least 10 - 15 %. I get the color wheel and a long wait almost 25% of the time. Is there a solution other than downgrading to 10>8?
Fixing a Mavericks Installation Problem
How to manage a failed OS X Mavericks installation | MacFixIt - CNET Reviews.
Try these in order:
1. a. Resetting your Mac's PRAM and NVRAM
b. Intel-based Macs: Resetting the System Management Controller (SMC)
2. Restart the computer in Safe Mode, then restart again, normally. If this doesn't help, then:
Boot to the Recovery HD: Restart the computer and after the chime press and hold down the
COMMAND and R keys until the Utilities menu screen appears. Alternatively, restart the computer and
after the chime press and hold down the OPTION key until the boot manager screen appears.
Select the Recovery HD and click on the downward pointing arrow button.
3. Repair the Hard Drive and Permissions: Upon startup select Disk Utility from the Utilities menu. Repair the Hard Drive and Permissions as follows.
When the recovery menu appears select Disk Utility. After DU loads select your hard drive entry (mfgr.'s ID and drive size) from the the left side list. In the DU status area you will see an entry for the S.M.A.R.T. status of the hard drive. If it does not say "Verified" then the hard drive is failing or failed. (SMART status is not reported on external Firewire or USB drives.) If the drive is "Verified" then select your OS X volume from the list on the left (sub-entry below the drive entry,) click on the First Aid tab, then click on the Repair Disk button. If DU reports any errors that have been fixed, then re-run Repair Disk until no errors are reported. If no errors are reported click on the Repair Permissions button. Wait until the operation completes, then quit DU and return to the main menu. Select Restart from the Apple menu.
4. Reinstall Lion/Mountain Lion, Mavericks: Reboot from the Recovery HD. Select Reinstall Lion/Mountain Lion, Mavericks from the Utilities menu, and click on the Continue button.
Note: You will need an active Internet connection. I suggest using Ethernet if possible because it is three times faster than wireless. -
Sequenced primary key slowed down my database!
I have a table (11 million rows) which was extremely slow for searches (more than 30 seconds) and I thought it's because the records were not unique and I did not have primary key for it. So I decided to add a column and put a sequence in it with a trigger for inserts that fills the field as a primary key. I also updated the statistics for the table. But this alone made the searches a lot slower. Just a sorting takes more than 10 minutes now. Does anybody have any idea what could have gone wrong?!
I'm working with application express 4.1 and oracle 11g if that matters.
I appreciate any help.I don't know if this helps:
SQL> show parameter optimizer
NAME TYPE VALUE
optimizer_capture_sql_plan_baselines boolean FALSE
optimizer_dynamic_sampling integer 2
optimizer_features_enable string 11.2.0.1
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 100
optimizer_mode string ALL_ROWS
optimizer_secure_view_merging boolean TRUE
optimizer_use_invisible_indexes boolean FALSE
optimizer_use_pending_statistics boolean FALSE
optimizer_use_sql_plan_baselines boolean TRUE
SQL> show parameter db_file_multi
NAME TYPE VALUE
db_file_multiblock_read_count integer 64
SQL> show parameter db_block_size
NAME TYPE VALUE
db_block_size integer 8192
SQL> show parameter cursor_sharing
NAME TYPE VALUE
cursor_sharing string EXACT
SQL> column sname format a20
SQL> column pname format a20
SQL> column pval2 format a20
SQL>
SQL> select
2 sname
3 , pname
4 , pval1
5 , pval2
6 from
7 sys.aux_stats$;
SNAME PNAME PVAL1 PVAL2
SYSSTATS_INFO STATUS COMPLETED
SYSSTATS_INFO DSTART 04-02-2010 14:19
SYSSTATS_INFO DSTOP 04-02-2010 14:19
SYSSTATS_INFO FLAGS 1
SYSSTATS_MAIN CPUSPEEDNW 1683.65129
SYSSTATS_MAIN IOSEEKTIM 10
SYSSTATS_MAIN IOTFRSPEED 4096
SYSSTATS_MAIN SREADTIM
SYSSTATS_MAIN MREADTIM
SYSSTATS_MAIN CPUSPEED
SYSSTATS_MAIN MBRC
SNAME PNAME PVAL1 PVAL2
SYSSTATS_MAIN MAXTHR
SYSSTATS_MAIN SLAVETHR
13 rows selected. -
Which of these things will slow down a mini?
1) Two computers connected to a router, both on, and both connected to the internet.
2) Two computers connected to a KVM switch, both on.
3) Multiple applications running at once on the mini (Mail, Safari, Text Edit, iCal)
4) Multiple instances of Safari open at once, accessing different sites.
s
Mac mini - Intel Core Duo - 1.66/2GB Mac OS X (10.4.6)If you have slow internet access sharing that access through the router will, at times, make one or both computers 'feel' slow while your are browsing but doesn't actually show the computer down.
Both connected via a KVM won't slow the computer down - but warning be careful about what USB peripherals you share via the KVM. My neighbor connected an external hard drive that way and didn't think about the fact that when he switched the KVM it was causing the hard drive to be improperly disconnected.
Running multiple programs will make the computer begin to feel slow because once you've reached the limits of your memory the computer will begin shifting data to the hard drive to allow you to keep launching programs. Since older PPC programs need Rosetta to run and Rosetta is a memory hog, the situation becomes even worse when you are running older programs.
When you open a new window you aren't running another 'instance' of Safari. There's only one running. This won't have any affect other than to draw more data through the internet pipeline which might slow down your internet access until all the pages are loaded. -
We have created a stage schema and tested application which is working fine when we are moving it to another schema for further testing ( This schema is created using same scripts which were used to create objects in staging schema) the performanc of application (Developed in .NET) slows down drastically
Some of the store procedures we have checked at Databse/SQLdeveloper level are giving almost same performance but at Application level there is lot of difference
Can you please help
We are using Oracke 11g DatabaseAre you using the Database Cloud Service? You cannot create schemas in the Database Cloud Service, which makes me think you are not. This forum is only for the Database Cloud Service.
- Rick Greenwald -
My external hard drive goes in to constant access mode and really slows down my computer
I'm using an external hard drive for time machine. After working for an hour or so the drive goes into a constant access mode and realy slows down my IMac. I look at activity monitor and everything looks good, no high CPU usage or memory issues. The only fix is to use the power button to shut down my IMac. After restart it works fine for a while.
If I turn off time machine the problem seems to not happen. I tried disk utility on the external hard drive and it says the dirve is fine. I change out external drives and the problem still occures. Any thoughts?I didn't realize my profile stated otherwise.
Please check near the bottom of your original post above to see OS X (10.7.2). You might want to update that to avoid confusion and save some time in the future.
OK, please take a deep breath.
Apple does not officially support Time Machine backups to a drive at the USB port of the AirPort Extreme....likely because it is not reliable. You might want to review this Apple Support document to confirm:
http://support.apple.com/kb/HT2038
So, we are not going to be able to provide you with much assistance on that issue.
Some users seem to be able to make this work....some have some problems....and some (like me) who have tried this have nothing but problems.
Sorry, I can't help on this one, but maybe another user who has had better luck will post to provide his secrets.
The iTunes and iPhoto libraries and files are my only copies now. I moved everything from my Macbook to the external then deleted the originals.
Not sure if you have thought about this.
If you deleted the "originals", then your only copy of your data is on one hard drive. You have no backups if the drive has a problem.
A minimum backup plan would be to have a copy of important data on two different drives. When....not if...one drive fails, you have the data on the "other" drive.
You have no "other" drive according to the information that you have provided.
Further.....Time Machine backs up the changes on your Mac. At some point....you cannot know when.....Time Machine will pick up the change on your Mac and delete the iTunes and iPhoto data from your Time Machine backups.
The files might stay there a few months, or even longer. But, I have seen instances where the files were deleted within a week or two.
So my advice would be to only delete data from your Mac that you can afford to lose. -
Slow database access across network
I have a postgresql database setup on a server machine and have written a java program in netbeans that accesses it. The problem i have is that running the jar created by netbeans from any other machine on the network has really slow database access but running the program from netbeans itself is fine. Running the jar on the server machine is also fine.
Anyoner got any idea as to why this could be?
TomI don't know if this will help, I'm just wading into writing my own java apps to hit a SQL 2K db. We purchased a SQL2k/JSP driven backend on which we extended their OM to meet our needs. It was build as an extranet product but ran very poorly across the 'Net.
The biggest annoyance was not the actual transaction time of the app but the time it took from the end user to click a button and the start of the transaction.
After much testing I determined it was the JSP.
So what we have done to alieviate the issue is to have multiple regional Tomcats that 'throw' their transactions to a central colocation where the SQL servers sit (so the tomcats do the JSP managment in a sense locally to the end user) . For big clients we actually place a linux/tomcat box at the edge of their firewall. For whatever reason, I'm far too busy to determine the how now that I get the responses I need, this has completely eradicated the annoying pause between user interaction and the actual transaction to the DB server. Extended testing showed the SQL server running in the sub half second range to process a command but the tomcat rendering could take up to 2 to 5 seconds in worst case for no discernable reason. Moving the tomcat frontends to the network segment where the clients we solved it.
Of course I'm digging into swing now too and it has some slowness that the Eclipse zealots say SWT fixes but I haven't the depth or experience to properly judge the camps arguments yet.
hth... -
Macpro slowing down cant access FB
my macpro is slowing down.. it loads slower that i cant even access facebook
Clone the system with SuperDuper
Repair the clone
Do a Safe Boot and then a normal restart
System maintenance and backups.
Too often people with laptop think this forum is for them, it is for workstation though.,
It is hard to imagine a workstation with 4 or more cores and even a paltry 2GB RAM being slow unless it isn't maintained.
Reading page outs, free space, free memory.....
Of course everyone expects or doesn't know what to include, what they will be asked, so we play 20 questions to figure out why,. And know what? there are literraly 1000+ threads in OS System Software forums of the same nature, over and over with much the same 'tips' and such. And I'd say laptops are most frequent to have slow systems. Mayhbe not always. -
why can't i access my itunes anymore? whenever i click on it, it makes my laptop freeze/slow down to the point where not even ctrl alt delete works properly and i have to turn the laptop off and then back on to get anything done. it has been this way for the last 2/3 days now and i have uninstalled and reinstalled it but it doesnt work
Hello there, bobbiefromIRL.
The following Knowledge Base article goes over some great steps for troubleshooting your issue:
iTunes for Windows Vista, Windows 7, or Windows 8: Fix unexpected quits or launch issues
http://support.apple.com/kb/ts1717
Thanks for reaching out to Apple Support Communities.
Cheers,
Pedro. -
Database slow down happeing for aperticular window
Hi,
For last few days we are having a issue with database slow down for a perticular window .We took the awr and ash report for that window and it shows the db file sequential read takes more time for aperticular query.But the same query works fine for rest of the day, so how we find the issue happend at that perticular window?
ThanksHi ,
there is not a single query running for that window, multiple sessions are running which are exceuting various queries.
Here is the AWR report for that window( due to size i could past only first half of thw awr report)
WORKLOAD REPOSITORY report for
DB Name DB Id Instance Inst num Release RAC Host
GNVPRD 1315880728 GNVPRD 1 10.2.0.4.0 NO tpora02
Snap Id Snap Time Sessions Cursors/Session
Begin Snap: 22711 07-Jul-10 12:00:31 491 15.1
End Snap: 22712 07-Jul-10 13:00:29 550 16.2
Elapsed: 59.97 (mins)
DB Time: 376.21 (mins)
Report Summary
Cache Sizes
Begin End
Buffer Cache: 6,144M 6,144M Std Block Size: 8K
Shared Pool Size: 2,048M 2,048M Log Buffer: 5,200K
Load Profile
Per Second Per Transaction
Redo size: 572,299.00 9,239.63
Logical reads: 129,738.24 2,094.59
Block changes: 3,534.49 57.06
Physical reads: 990.77 16.00
Physical writes: 350.18 5.65
User calls: 3,806.67 61.46
Parses: 438.64 7.08
Hard parses: 2.31 0.04
Sorts: 1,112.23 17.96
Logons: 5.56 0.09
Executes: 4,926.11 79.53
Transactions: 61.94
% Blocks changed per Read: 2.72 Recursive Call %: 63.19
Rollback per transaction %: 0.21 Rows per Sort: 9.73
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: 99.99 Redo NoWait %: 100.00
Buffer Hit %: 99.25 In-memory Sort %: 100.00
Library Hit %: 99.70 Soft Parse %: 99.47
Execute to Parse %: 91.10 Latch Hit %: 99.89
Parse CPU to Parse Elapsd %: 95.41 % Non-Parse CPU: 98.92
Shared Pool Statistics
Begin End
Memory Usage %: 87.11 87.32
% SQL with executions>1: 71.59 67.41
% Memory for SQL w/exec>1: 78.66 77.94
Top 5 Timed Events
Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Class
db file sequential read 2,120,397 9,932 5 44.0 User I/O
CPU time 9,284 41.1
db file parallel write 25,213 6,943 275 30.8 System I/O
enq: RO - fast object reuse 553 1,388 2,510 6.1 Application
log file parallel write 200,039 685 3 3.0 System I/O
Main Report
• Report Summary
• Wait Events Statistics
• SQL Statistics
• Instance Activity Statistics
• IO Stats
• Buffer Pool Statistics
• Advisory Statistics
• Wait Statistics
• Undo Statistics
• Latch Statistics
• Segment Statistics
• Dictionary Cache Statistics
• Library Cache Statistics
• Memory Statistics
• Streams Statistics
• Resource Limit Statistics
• init.ora Parameters
Back to Top
Wait Events Statistics
• Time Model Statistics
• Wait Class
• Wait Events
• Background Wait Events
• Operating System Statistics
• Service Statistics
• Service Wait Class Stats
Back to Top
Time Model Statistics
• Total time in database user-calls (DB Time): 22572.5s
• Statistics including the word "background" measure background process time, and so do not contribute to the DB time statistic
• Ordered by % or DB time desc, Statistic name
Statistic Name Time (s) % of DB Time
sql execute elapsed time 21,791.55 96.54
DB CPU 9,283.91 41.13
PL/SQL execution elapsed time 835.47 3.70
connection management call elapsed time 217.19 0.96
parse time elapsed 108.39 0.48
hard parse elapsed time 65.36 0.29
RMAN cpu time (backup/restore) 6.94 0.03
repeated bind elapsed time 1.67 0.01
sequence load elapsed time 1.35 0.01
PL/SQL compilation elapsed time 1.13 0.01
inbound PL/SQL rpc elapsed time 0.46 0.00
hard parse (sharing criteria) elapsed time 0.13 0.00
failed parse elapsed time 0.11 0.00
DB time 22,572.52
background elapsed time 8,108.80
background cpu time 239.28
Back to Wait Events Statistics
Back to Top
Wait Class
• s - second
• cs - centisecond - 100th of a second
• ms - millisecond - 1000th of a second
• us - microsecond - 1000000th of a second
• ordered by wait time desc, waits desc
Wait Class Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn
User I/O 2,252,192 0.00 10,358 5 10.11
System I/O 290,991 0.00 7,754 27 1.31
Application 989 52.88 1,713 1732 0.00
Other 9,008 4.32 862 96 0.04
Commit 123,032 0.01 663 5 0.55
Network 8,045,193 0.00 322 0 36.10
Administrative 8,083 0.00 222 28 0.04
Concurrency 14,492 1.19 21 1 0.07
Configuration 1,039 31.18 3 3 0.00
Back to Wait Events Statistics
Back to Top
Wait Events
• s - second
• cs - centisecond - 100th of a second
• ms - millisecond - 1000th of a second
• us - microsecond - 1000000th of a second
• ordered by wait time desc, waits desc (idle events last)
Event Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn
db file sequential read 2,120,397 0.00 9,932 5 9.51
db file parallel write 25,213 0.00 6,943 275 0.11
enq: RO - fast object reuse 553 82.46 1,388 2510 0.00
log file parallel write 200,039 0.00 685 3 0.90
log file sync 123,032 0.01 663 5 0.55
rdbms ipc reply 417 57.31 486 1166 0.00
db file scattered read 58,713 0.00 334 6 0.26
enq: TX - row lock contention 212 31.60 325 1535 0.00
enq: CI - contention 203 32.02 230 1132 0.00
SQL*Net more data from dblink 697 0.00 197 283 0.00
enq: TX - contention 50 92.00 142 2840 0.00
Backup: sbtwrite2 8,070 0.00 92 11 0.04
read by other session 26,250 0.00 87 3 0.12
SQL*Net more data from client 111,270 0.00 79 1 0.50
Backup: sbtbackup 2 0.00 61 30738 0.00
Backup: sbtremove2 1 0.00 58 57528 0.00
log file sequential read 2,031 0.00 50 25 0.01
Log archive I/O 2,012 0.00 46 23 0.01
SQL*Net more data to client 525,719 0.00 42 0 2.36
RMAN backup & recovery I/O 3,995 0.00 17 4 0.02
control file parallel write 2,081 0.00 11 5 0.01
row cache lock 13 15.38 7 517 0.00
Backup: sbtclose2 2 0.00 6 3210 0.00
latch: cache buffers chains 9,632 0.00 6 1 0.04
Backup: sbtinfo2 2 0.00 4 2249 0.00
SQL*Net message to client 7,407,395 0.00 4 0 33.24
Data file init write 130 0.00 3 26 0.00
latch: library cache 2,556 0.00 3 1 0.01
db file single write 666 0.00 2 3 0.00
control file sequential read 55,562 0.00 2 0 0.25
cursor: pin S wait on X 175 97.14 2 10 0.00
latch free 952 0.21 1 1 0.00
log file switch completion 46 0.00 1 26 0.00
latch: cache buffers lru chain 1,025 0.00 1 1 0.00
os thread startup 12 0.00 1 88 0.00
control file single write 48 0.00 1 21 0.00
write complete waits 1 100.00 1 977 0.00
latch: library cache pin 706 0.00 1 1 0.00
log buffer space 126 0.79 1 5 0.00
LGWR wait for redo copy 3,688 0.41 1 0 0.02
latch: row cache objects 460 0.00 1 1 0.00
switch logfile command 3 0.00 0 162 0.00
enq: TX - index contention 22 0.00 0 18 0.00
library cache lock 1 0.00 0 341 0.00
latch: shared pool 137 0.00 0 2 0.00
latch: enqueue hash chains 103 0.00 0 3 0.00
wait list latch free 9 0.00 0 21 0.00
latch: object queue header operation 137 0.00 0 1 0.00
library cache load lock 6 0.00 0 25 0.00
kksfbc child completion 4 75.00 0 37 0.00
latch: messages 493 0.00 0 0 0.00
SQL*Net break/reset to client 224 0.00 0 1 0.00
latch: session allocation 258 0.00 0 1 0.00
latch: cache buffer handles 125 0.00 0 1 0.00
db file parallel read 12 0.00 0 10 0.00
reliable message 85 0.00 0 1 0.00
buffer busy waits 543 0.00 0 0 0.00
latch: redo writing 543 0.00 0 0 0.00
latch: redo allocation 65 0.00 0 1 0.00
Backup: sbtinit 1 0.00 0 66 0.00
log file single write 10 0.00 0 6 0.00
latch: In memory undo latch 171 0.00 0 0 0.00
direct path read temp 45,810 0.00 0 0 0.21
cursor: pin S 1,325 0.00 0 0 0.01
Backup: sbtend 1 0.00 0 29 0.00
latch: library cache lock 56 0.00 0 0 0.00
log file switch (private strand flush incomplete) 1 0.00 0 21 0.00
latch: checkpoint queue latch 45 0.00 0 0 0.00
ktfbtgex 1 100.00 0 10 0.00
buffer deadlock 18 100.00 0 0 0.00
undo segment extension 322 100.00 0 0 0.00
latch: undo global data 4 0.00 0 1 0.00
direct path write temp 208 0.00 0 0 0.00
SQL*Net message to dblink 112 0.00 0 0 0.00
cursor: mutex S 2 0.00 0 0 0.00
Backup: sbtinit2 1 0.00 0 0 0.00
direct path read 2 0.00 0 0 0.00
direct path write 4 0.00 0 0 0.00
enq: CF - contention 1 0.00 0 0 0.00
SQL*Net message from client 7,407,362 0.00 499,728 67 33.24
wait for unread message on broadcast channel 5,829 100.00 5,696 977 0.03
Streams AQ: waiting for messages in the queue 739 100.00 3,512 4752 0.00
jobq slave wait 538 96.65 1,563 2905 0.00
SQL*Net message from dblink 113 0.00 188 1663 0.00
single-task message 6 0.00 1 91 0.00
class slave wait 2 0.00 0 1 0.00
Back to Wait Events Statistics
Back to Top
Background Wait Events
• ordered by wait time desc, waits desc (idle events last)
Event Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn
db file parallel write 25,213 0.00 6,943 275 0.11
log file parallel write 200,053 0.00 685 3 0.90
log file sequential read 2,003 0.00 50 25 0.01
Log archive I/O 1,985 0.00 46 23 0.01
events in waitclass Other 5,075 0.35 36 7 0.02
control file parallel write 1,926 0.00 11 5 0.01
db file single write 665 0.00 2 3 0.00
db file scattered read 70 0.00 2 21 0.00
os thread startup 12 0.00 1 88 0.00
log buffer space 121 0.83 0 3 0.00
control file sequential read 3,436 0.00 0 0 0.02
latch: redo writing 543 0.00 0 0 0.00
log file single write 10 0.00 0 6 0.00
latch: cache buffers chains 9 0.00 0 1 0.00
buffer busy waits 4 0.00 0 0 0.00
latch: In memory undo latch 5 0.00 0 0 0.00
latch: shared pool 1 0.00 0 0 0.00
db file sequential read 2,486 0.00 -0 -0 0.01
rdbms ipc message 270,474 6.59 53,843 199 1.21
pmon timer 1,199 99.92 3,506 2924 0.01
smon timer 5,152 0.00 3,477 675 0.02
class slave wait 1 0.00 0 1 0.00
Back to Wait Events Statistics
Back to Top
Operating System Statistics
Statistic Total
AVG_BUSY_TIME 97,613
AVG_IDLE_TIME 250,683
AVG_IOWAIT_TIME 50,858
AVG_SYS_TIME 40,172
AVG_USER_TIME 57,332
BUSY_TIME 1,563,616
IDLE_TIME 4,012,607
IOWAIT_TIME 815,513
SYS_TIME 644,464
USER_TIME 919,152
LOAD 1
OS_CPU_WAIT_TIME ###############
RSRC_MGR_CPU_WAIT_TIME 0
VM_IN_BYTES 8,159,232
VM_OUT_BYTES 0
PHYSICAL_MEMORY_BYTES ###############
NUM_CPUS 16
NUM_CPU_SOCKETS 16
Back to Wait Events Statistics
Back to Top
Service Statistics
• ordered by DB Time
Service Name DB Time (s) DB CPU (s) Physical Reads Logical Reads
GNVPRD 19,725.00 6,820.70 2,875,582 406,809,618
SYS$USERS 2,809.60 2,432.80 689,519 59,435,406
SYS$BACKGROUND 0.00 0.00 5,952 50,964
Back to Wait Events Statistics
Back to Top
Service Wait Class Stats
• Wait Class info for services in the Service Statistics section.
• Total Waits and Time Waited displayed for the following wait classes: User I/O, Concurrency, Administrative, Network
• Time Waited (Wt Time) in centisecond (100th of a second)
Service Name User I/O Total Wts User I/O Wt Time Concurcy Total Wts Concurcy Wt Time Admin Total Wts Admin Wt Time Network Total Wts Network Wt Time
GNVPRD 2174758 999257 13651 1341 8083 22246 7947374 32088
SYS$USERS 73011 35601 774 692 0 0 37787 71
SYS$BACKGROUND 4214 913 31 107 0 0 0 0
Back to Wait Events Statistics
Back to Top
SQL Statistics
• SQL ordered by Elapsed Time
• SQL ordered by CPU Time
• SQL ordered by Gets
• SQL ordered by Reads
• SQL ordered by Executions
• SQL ordered by Parse Calls
• SQL ordered by Sharable Memory
• SQL ordered by Version Count
• Complete List of SQL Text
Back to Top
SQL ordered by Elapsed Time
• Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
• % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100
Elapsed Time (s) CPU Time (s) Executions Elap per Exec (s) % Total DB Time SQL Id SQL Module SQL Text
1,646 200 3,382 0.49 7.29 gj4cun71t2tdz
RATE@tpora02 (TNS V1-V3) select cprd.event_num, cp...
1,476 71 1,724 0.86 6.54 90rxahqy9rntt
RATE@tpora02 (TNS V1-V3) SELECT CUSTEVENTSOURCE.EVENT_S...
1,323 47 1,897 0.70 5.86 bj2k1at7aa2jr
RATE@tpora02 (TNS V1-V3) INSERT INTO COSTEDEVENT (ACCOU...
1,219 220 68,594 0.02 5.40 0s3n1qq8m9qvj
DEBTage@tpora02 (TNS V1-V3) SELECT BILLSUMMARY.ACCOUNT_NUM...
1,112 718 6 185.27 4.92 4rz598nkvfmq6
SQL*Plus begin TPP_REFILLS; end;
989 139 133,363 0.01 4.38 azck89hzzsxzs
JDBC Connect Client SELECT NVL(A.OVERDUE, 0), TO_N...
855 530 1,121 0.76 3.79 ata582x7aa4m7
custaccmaintenance.exe SELECT CPD2.START_DAT "START_D...
788 736 1,006 0.78 3.49 dx0tmr2qk5gtc
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PROD...
703 700 345 2.04 3.12 ctfptvsjzpk91
JDBC Connect Client SELECT 1 FROM PVCUSTHASPRODUCT...
676 441 1,121 0.60 3.00 3tb8v001ab9us
custaccmaintenance.exe SELECT DISTINCT C.START_DAT "S...
630 596 4 157.57 2.79 gbrschujps752
oracle@tpora04 (TNS V1-V3) SELECT "A1"."ACCOUNT_NUM"||'|'...
554 544 169 3.28 2.46 gzyxsfa4x9jc9
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PAYM...
512 238 2,059,483 0.00 2.27 4nt4x1ty34034
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
475 113 133,143 0.00 2.11 70gcpfy5mud9z
JDBC Connect Client SELECT COUNT(*) FROM PVDEBTESC...
451 152 6 75.23 2.00 9c0hw716bqzra
SQL*Plus begin TPP_COLLECTION...
437 148 6 72.81 1.94 0d4axgbm13s4q
SQL*Plus begin TPP_COLLECTION...
422 131 5 84.44 1.87 axun401xz5b9n
SQL*Plus begin TPP_COLLECTION...
413 99 7 58.98 1.83 0d6b7w315bm45
SQL*Plus DECLARE l_stream nu...
392 80 6 65.26 1.73 bxhccjz09f6gr
SQL*Plus (SELECT DISTINCT AC.ACCOUNT_NU...
385 146 6 64.20 1.71 3abjdvpx6d1km
SQL*Plus begin TPP_COLLECTION...
368 129 5 73.69 1.63 brqj2987r5qug
SQL*Plus begin TPP_COLLECTION...
339 128 5 67.89 1.50 2t3dbft8xna14
SQL*Plus begin TPP_COLLECTION...
335 10 165,568 0.00 1.48 fkp4mg3g9pxhj
RATE@tpora02 (TNS V1-V3) SELECT ACCOUNTRATING.ACCOUNT_N...
299 143 6 49.85 1.33 7zybhxkwuwsz5
SQL*Plus begin TPP_COLLECTION...
290 150 2,087,640 0.00 1.29 4wbvga5zfrw8j
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
279 103 132,265 0.00 1.24 3r6cw5a8hkm0m
SQL*Plus SELECT NVL2(SUPPLIER_ORDER_NUM...
273 272 1,057 0.26 1.21 f5rca5d6by0mz
JDBC Connect Client SELECT MAX(PROCESS_START) FROM...
260 258 966 0.27 1.15 1k5g1um0u2ty9
JDBC Connect Client SELECT COUNT(*) FROM TPP_COLLE...
226 225 169 1.34 1.00 7tz06amad7rhh
JDBC Connect Client UPDATE GNV_TR_ADDPAYMENT SET P...
Back to SQL Statistics
Back to Top
SQL ordered by CPU Time
• Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
• % Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100
CPU Time (s) Elapsed Time (s) Executions CPU per Exec (s) % Total DB Time SQL Id SQL Module SQL Text
736 788 1,006 0.73 3.49 dx0tmr2qk5gtc
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PROD...
718 1,112 6 119.66 4.92 4rz598nkvfmq6
SQL*Plus begin TPP_REFILLS; end;
700 703 345 2.03 3.12 ctfptvsjzpk91
JDBC Connect Client SELECT 1 FROM PVCUSTHASPRODUCT...
596 630 4 148.95 2.79 gbrschujps752
oracle@tpora04 (TNS V1-V3) SELECT "A1"."ACCOUNT_NUM"||'|'...
544 554 169 3.22 2.46 gzyxsfa4x9jc9
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PAYM...
530 855 1,121 0.47 3.79 ata582x7aa4m7
custaccmaintenance.exe SELECT CPD2.START_DAT "START_D...
441 676 1,121 0.39 3.00 3tb8v001ab9us
custaccmaintenance.exe SELECT DISTINCT C.START_DAT "S...
272 273 1,057 0.26 1.21 f5rca5d6by0mz
JDBC Connect Client SELECT MAX(PROCESS_START) FROM...
258 260 966 0.27 1.15 1k5g1um0u2ty9
JDBC Connect Client SELECT COUNT(*) FROM TPP_COLLE...
238 512 2,059,483 0.00 2.27 4nt4x1ty34034
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
225 226 169 1.33 1.00 7tz06amad7rhh
JDBC Connect Client UPDATE GNV_TR_ADDPAYMENT SET P...
220 1,219 68,594 0.00 5.40 0s3n1qq8m9qvj
DEBTage@tpora02 (TNS V1-V3) SELECT BILLSUMMARY.ACCOUNT_NUM...
200 1,646 3,382 0.06 7.29 gj4cun71t2tdz
RATE@tpora02 (TNS V1-V3) select cprd.event_num, cp...
152 451 6 25.38 2.00 9c0hw716bqzra
SQL*Plus begin TPP_COLLECTION...
150 290 2,087,640 0.00 1.29 4wbvga5zfrw8j
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
148 437 6 24.62 1.94 0d4axgbm13s4q
SQL*Plus begin TPP_COLLECTION...
146 385 6 24.34 1.71 3abjdvpx6d1km
SQL*Plus begin TPP_COLLECTION...
143 299 6 23.82 1.33 7zybhxkwuwsz5
SQL*Plus begin TPP_COLLECTION...
139 989 133,363 0.00 4.38 azck89hzzsxzs
JDBC Connect Client SELECT NVL(A.OVERDUE, 0), TO_N...
131 422 5 26.21 1.87 axun401xz5b9n
SQL*Plus begin TPP_COLLECTION...
129 368 5 25.82 1.63 brqj2987r5qug
SQL*Plus begin TPP_COLLECTION...
128 339 5 25.61 1.50 2t3dbft8xna14
SQL*Plus begin TPP_COLLECTION...
113 475 133,143 0.00 2.11 70gcpfy5mud9z
JDBC Connect Client SELECT COUNT(*) FROM PVDEBTESC...
103 279 132,265 0.00 1.24 3r6cw5a8hkm0m
SQL*Plus SELECT NVL2(SUPPLIER_ORDER_NUM...
99 413 7 14.11 1.83 0d6b7w315bm45
SQL*Plus DECLARE l_stream nu...
80 392 6 13.38 1.73 bxhccjz09f6gr
SQL*Plus (SELECT DISTINCT AC.ACCOUNT_NU...
71 1,476 1,724 0.04 6.54 90rxahqy9rntt
RATE@tpora02 (TNS V1-V3) SELECT CUSTEVENTSOURCE.EVENT_S...
47 1,323 1,897 0.02 5.86 bj2k1at7aa2jr
RATE@tpora02 (TNS V1-V3) INSERT INTO COSTEDEVENT (ACCOU...
10 335 165,568 0.00 1.48 fkp4mg3g9pxhj
RATE@tpora02 (TNS V1-V3) SELECT ACCOUNTRATING.ACCOUNT_N...
Back to SQL Statistics
Back to Top
SQL ordered by Gets
• Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
• Total Buffer Gets: 466,834,523
• Captured SQL account for 66.1% of Total
Buffer Gets Executions Gets per Exec %Total CPU Time (s) Elapsed Time (s) SQL Id SQL Module SQL Text
97,138,090 1,121 86,653.07 20.81 530.19 855.23 ata582x7aa4m7
custaccmaintenance.exe SELECT CPD2.START_DAT "START_D...
88,649,958 1,121 79,081.14 18.99 441.39 676.20 3tb8v001ab9us
custaccmaintenance.exe SELECT DISTINCT C.START_DAT "S...
21,778,221 1,006 21,648.33 4.67 735.64 787.60 dx0tmr2qk5gtc
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PROD...
21,179,373 3,382 6,262.38 4.54 199.85 1646.41 gj4cun71t2tdz
RATE@tpora02 (TNS V1-V3) select cprd.event_num, cp...
20,355,429 345 59,001.24 4.36 699.56 703.43 ctfptvsjzpk91
JDBC Connect Client SELECT 1 FROM PVCUSTHASPRODUCT...
18,462,542 6 3,077,090.33 3.95 717.94 1111.60 4rz598nkvfmq6
SQL*Plus begin TPP_REFILLS; end;
13,979,364 169 82,718.13 2.99 544.48 554.28 gzyxsfa4x9jc9
JDBC Connect Client BEGIN GENEVA_ADMIN.GNV_BE_PAYM...
9,484,600 2,087,640 4.54 2.03 150.20 290.38 4wbvga5zfrw8j
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
8,370,348 2,059,483 4.06 1.79 237.85 512.20 4nt4x1ty34034
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
8,208,700 6 1,368,116.67 1.76 152.29 451.37 9c0hw716bqzra
SQL*Plus begin TPP_COLLECTION...
7,928,935 6 1,321,489.17 1.70 147.70 436.85 0d4axgbm13s4q
SQL*Plus begin TPP_COLLECTION...
7,864,331 6 1,310,721.83 1.68 142.91 299.11 7zybhxkwuwsz5
SQL*Plus begin TPP_COLLECTION...
7,821,595 6 1,303,599.17 1.68 146.06 385.22 3abjdvpx6d1km
SQL*Plus begin TPP_COLLECTION...
7,774,307 1,057 7,355.07 1.67 271.82 273.33 f5rca5d6by0mz
JDBC Connect Client SELECT MAX(PROCESS_START) FROM...
7,073,493 784 9,022.31 1.52 222.56 224.41 dvhuu9xxtth12
SQL*Plus SELECT ACCOUNTATTRIBUTE3, ACCO...
7,003,054 169 41,438.19 1.50 225.02 225.81 7tz06amad7rhh
JDBC Connect Client UPDATE GNV_TR_ADDPAYMENT SET P...
6,824,695 68,594 99.49 1.46 219.66 1218.68 0s3n1qq8m9qvj
DEBTage@tpora02 (TNS V1-V3) SELECT BILLSUMMARY.ACCOUNT_NUM...
6,805,514 5 1,361,102.80 1.46 131.07 422.18 axun401xz5b9n
SQL*Plus begin TPP_COLLECTION...
6,692,517 5 1,338,503.40 1.43 129.11 368.47 brqj2987r5qug
SQL*Plus begin TPP_COLLECTION...
6,615,712 5 1,323,142.40 1.42 128.05 339.44 2t3dbft8xna14
SQL*Plus begin TPP_COLLECTION...
5,860,474 132,265 44.31 1.26 103.31 279.47 3r6cw5a8hkm0m
SQL*Plus SELECT NVL2(SUPPLIER_ORDER_NUM...
5,128,762 5 1,025,752.40 1.10 103.33 177.17 8c6vmvbwp9ja4
SQL*Plus begin TPP_COLLECTION...
Back to SQL Statistics
Back to Top
SQL ordered by Reads
• Total Disk Reads: 3,565,074
• Captured SQL account for 66.6% of Total
Physical Reads Executions Reads per Exec %Total CPU Time (s) Elapsed Time (s) SQL Id SQL Module SQL Text
581,050 2 290,525.00 16.30 152.66 195.17 d15cdr0zt3vtp
Oracle Enterprise Manager.Metric Engine SELECT TO_CHAR(current_timesta...
278,588 1,724 161.59 7.81 70.51 1475.54 90rxahqy9rntt
RATE@tpora02 (TNS V1-V3) SELECT CUSTEVENTSOURCE.EVENT_S...
263,588 1,897 138.95 7.39 46.73 1322.83 bj2k1at7aa2jr
RATE@tpora02 (TNS V1-V3) INSERT INTO COSTEDEVENT (ACCOU...
260,337 68,594 3.80 7.30 219.66 1218.68 0s3n1qq8m9qvj
DEBTage@tpora02 (TNS V1-V3) SELECT BILLSUMMARY.ACCOUNT_NUM...
256,696 3,382 75.90 7.20 199.85 1646.41 gj4cun71t2tdz
RATE@tpora02 (TNS V1-V3) select cprd.event_num, cp...
232,825 133,363 1.75 6.53 138.65 988.53 azck89hzzsxzs
JDBC Connect Client SELECT NVL(A.OVERDUE, 0), TO_N...
166,786 7 23,826.57 4.68 98.78 412.88 0d6b7w315bm45
SQL*Plus DECLARE l_stream nu...
152,293 6 25,382.17 4.27 80.25 391.58 bxhccjz09f6gr
SQL*Plus (SELECT DISTINCT AC.ACCOUNT_NU...
91,086 133,143 0.68 2.55 113.14 475.35 70gcpfy5mud9z
JDBC Connect Client SELECT COUNT(*) FROM PVDEBTESC...
75,392 6 12,565.33 2.11 152.29 451.37 9c0hw716bqzra
SQL*Plus begin TPP_COLLECTION...
71,522 6 11,920.33 2.01 147.70 436.85 0d4axgbm13s4q
SQL*Plus begin TPP_COLLECTION...
67,724 132,265 0.51 1.90 103.31 279.47 3r6cw5a8hkm0m
SQL*Plus SELECT NVL2(SUPPLIER_ORDER_NUM...
64,148 2,059,483 0.03 1.80 237.85 512.20 4nt4x1ty34034
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
63,710 5 12,742.00 1.79 131.07 422.18 axun401xz5b9n
SQL*Plus begin TPP_COLLECTION...
56,512 6 9,418.67 1.59 146.06 385.22 3abjdvpx6d1km
SQL*Plus begin TPP_COLLECTION...
52,123 6 8,687.17 1.46 717.94 1111.60 4rz598nkvfmq6
SQL*Plus begin TPP_REFILLS; end;
51,966 5 10,393.20 1.46 129.11 368.47 brqj2987r5qug
SQL*Plus begin TPP_COLLECTION...
47,043 5 9,408.60 1.32 128.05 339.44 2t3dbft8xna14
SQL*Plus begin TPP_COLLECTION...
46,992 1,121 41.92 1.32 530.19 855.23 ata582x7aa4m7
custaccmaintenance.exe SELECT CPD2.START_DAT "START_D...
42,104 6 7,017.33 1.18 142.91 299.11 7zybhxkwuwsz5
SQL*Plus begin TPP_COLLECTION...
40,144 1,121 35.81 1.13 441.39 676.20 3tb8v001ab9us
custaccmaintenance.exe SELECT DISTINCT C.START_DAT "S...
Back to SQL Statistics
Back to Top
SQL ordered by Executions
• Total Executions: 17,725,519
• Captured SQL account for 38.5% of Total
Executions Rows Processed Rows per Exec CPU per Exec (s) Elap per Exec (s) SQL Id SQL Module SQL Text
2,087,640 919,180 0.44 0.00 0.00 4wbvga5zfrw8j
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
2,059,483 2,159,051 1.05 0.00 0.00 4nt4x1ty34034
DEBTage@tpora02 (TNS V1-V3) SELECT DEBTESCALATIONREQUEST.A...
596,449 0 0.00 0.00 0.00 9zstg7a7j4mk6
custaccmaintenance.exe SELECT STRING_VALUE FROM GPARA...
267,468 267,431 1.00 0.00 0.00 8bgyqd22xu56f
JDBC Connect Client SELECT STRING_VALUE FROM TPP_G...
203,642 157,264 0.77 0.00 0.00 0h6b2sajwb74n
select privilege#, level from ...
165,568 165,565 1.00 0.00 0.00 fkp4mg3g9pxhj
RATE@tpora02 (TNS V1-V3) SELECT ACCOUNTRATING.ACCOUNT_N...
133,424 133,406 1.00 0.00 0.00 5aspmjf2vrnq5
JDBC Connect Client update accountattributes set D...
133,422 133,416 1.00 0.00 0.00 82xjvtb8p8qzw
JDBC Connect Client update accountattributes set A...
133,414 133,416 1.00 0.00 0.00 3cwuq4f267u2p
JDBC Connect Client update accountattributes set P...
133,363 133,340 1.00 0.00 0.01 azck89hzzsxzs
JDBC Connect Client SELECT NVL(A.OVERDUE, 0), TO_N...
Back to SQL Statistics
Back to Top
SQL ordered by Parse Calls
• Total Parse Calls: 1,578,365
• Captured SQL account for 68.8% of Total
Parse Calls Executions % Total Parses SQL Id SQL Module SQL Text
203,641 203,642 12.90 0h6b2sajwb74n
select privilege#, level from ...
133,417 133,422 8.45 82xjvtb8p8qzw
JDBC Connect Client update accountattributes set A...
133,399 133,424 8.45 5aspmjf2vrnq5
JDBC Connect Client update accountattributes set D...
133,373 133,414 8.45 3cwuq4f267u2p
JDBC Connect Client update accountattributes set P...
133,294 133,305 8.45 f2cwgjkfgrd34
JDBC Connect Client update accountattributes set A...
22,476 22,476 1.42 9babjv8yq8ru3
SQL*Plus BEGIN DBMS_OUTPUT.GET_LINES(:L...
20,013 20,013 1.27 0k8522rmdzg4k
select privilege# from sysauth...
19,963 20,102 1.26 15zytu14qzw6p
oracle@tpora04 (TNS V1-V3) insert into sys.aud$( sessioni...
19,902 19,902 1.26 1rd8um1taq1fn
update sys.aud$ set action#=:2...
19,412 19,412 1.23 459f3z9u4fb3u
select value$ from props$ wher...
19,408 19,407 1.23 0ws7ahf1d78qa
select SYS_CONTEXT('USERENV', ...
19,388 19,388 1.23 5ur69atw3vfhj
select decode(failover_method,...
18,432 18,432 1.17 1uzhrfn574t12
sqlplus@tpora02 (TNS V1-V3) SELECT ATTRIBUTE, SCOPE, NUMER...
18,432 18,432 1.17 c4pc3jhzjcmc7
sqlplus@tpora02 (TNS V1-V3) SELECT CHAR_VALUE FROM SYSTEM....
18,432 18,432 1.17 d6vwqbw6r2ffk
sqlplus@tpora02 (TNS V1-V3) SELECT USER FROM DUAL
18,432 18,432 1.17 dyk4dprp70d74
SQL*Plus SELECT DECODE('A', 'A', '1', '...
18,431 18,431 1.17 g4y6nw3tts7cc
sqlplus@tpora02 (TNS V1-V3) BEGIN DBMS_APPLICATION_INFO.SE...
18,420 18,420 1.17 5qgz1p0cut7mx
sqlplus@tpora02 (TNS V1-V3) BEGIN DBMS_OUTPUT.DISABLE; END...
18,149 18,149 1.15 cb21bacyh3c7d
select metadata from kopm$ wh...
18,028 18,028 1.14 b3s1x9zqrvzvc
SQL*Plus BEGIN DBMS_OUTPUT.ENABLE(10000...
Back to SQL Statistics
Back to Top
SQL ordered by Sharable Memory
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Version Count
• Only Statements with Version Count greater than 20 are displayed
Version Count Executions SQL Id SQL Module SQL Text
37 1 5m21u4xgy81pa
SQL*Plus select ord.status_cd Status, ...
35 1 26hm5bmbzq9sy
SQL*Plus select ord.status_cd Status, ...
23 1 gtn080r95gfr9
SQL*Plus insert into connect_pp_monitor...
Back to SQL Statistics
Back to Top -
System slowed down after Mavericks update (10GB RAM)
Hi,
I have recently updated to Maverics on my mac pro, 2 x 2.8 GHz Quad-Core Intel Xeon, 10GB RAM.
When I perform regular tasks it's all normal. Unfortunately I do some much more than that. I use Aperture on a daily basis and it seems to have slowed down a bit. The issue is more apparent when I use Final Cut. I can't have any other design/photography/video software on the background anymore. My computer can't deal with. But it could before Mavericks! It will also complain about not enough memory when rendering...
I understand that kernel task is heavy on the memory and after an EtreCheck I also realised how much memory spotilight is using. I already excluded a lot of items from spotlight, and it's way better, but still, why is my computer so slow?
Please can someone look at my check and tell me if there's anything I can do to boost my system back to it's previous glory?
thank you
Hardware Information:
Mac Pro (Early 2008)
Mac Pro - model: MacPro3,1
2 2.8 GHz Quad-Core Intel Xeon CPUs: 8 cores
10 GB RAM
Video Information:
NVIDIA GeForce 8800 GT - VRAM: 512 MB
System Software:
OS X 10.9.1 (13B42) - Uptime: 1 day 5:55:10
Disk Information:
WDC WD2002FAEX-007BA0 disk0 : (2 TB)
EFI (disk0s1) <not mounted>: 209.7 MB
Disc 4 (disk0s2) /Volumes/Disc 4: 2 TB (493.89 GB free)
ST3000DM001-1CH166 disk1 : (3 TB)
EFI (disk1s1) <not mounted>: 209.7 MB
Disc 2 (disk1s2) /Volumes/Disc 2: 3 TB (49.2 GB free)
ST31000528AS disk2 : (1 TB)
EFI (disk2s1) <not mounted>: 209.7 MB
Disc 3 (disk2s2) /Volumes/Disc 3: 999.86 GB (3.26 GB free)
ST31500341AS disk3 : (1.5 TB)
EFI (disk3s1) <not mounted>: 209.7 MB
disk3s2 (disk3s2) <not mounted>: 1.5 TB
Recovery HD (disk3s3) <not mounted>: 650 MB
USB Information:
Apple Inc. iPhone
Apple, Inc. Keyboard Hub
Apple, Inc Apple Keyboard
Generic Flash Card Reader
Apple Inc. Bluetooth USB Host Controller
FireWire Information:
Thunderbolt Information:
Kernel Extensions:
Startup Items:
HP USB EWS Gateway: Path: /Library/StartupItems/HP USB EWS Gateway
HPlaserjet Trap Monitor: Path: /Library/StartupItems/HPlaserjet Trap Monitor
MySQLCOM: Path: /Library/StartupItems/MySQLCOM
Problem System Launch Daemons:
Problem System Launch Agents:
Launch Daemons:
[System] com.adobe.fpsaud.plist 3rd-Party support link
[System] com.adobe.SwitchBoard.plist 3rd-Party support link
[System] com.microsoft.office.licensing.helper.plist 3rd-Party support link
[invalid] com.oracle.java.Helper-Tool.plist
Launch Agents:
[System] com.adobe.AAM.Updater-1.0.plist 3rd-Party support link
[invalid] com.oracle.java.Java-Updater.plist
[System] com.wacom.pentablet.plist 3rd-Party support link
User Launch Agents:
[not loaded] com.adobe.AAM.Updater-1.0.plist 3rd-Party support link
[not loaded] com.adobe.ARM.[...].plist 3rd-Party support link
[not loaded] com.google.keystone.agent.plist 3rd-Party support link
[not loaded] com.spotify.webhelper.plist 3rd-Party support link
User Login Items:
Dropbox
Spotify
HPEventHandler
Internet Plug-ins:
Flip4Mac WMV Plugin: Version: 2.2.3.7 3rd-Party support link
FlashPlayer-10.6: Version: 12.0.0.44 - SDK 10.6 3rd-Party support link
Default Browser: Version: 537 - SDK 10.9
AdobePDFViewerNPAPI: Version: 11.0.01 - SDK 10.6 3rd-Party support link
AdobePDFViewer: Version: 11.0.01 - SDK 10.6 3rd-Party support link
Flash Player: Version: 12.0.0.44 - SDK 10.6 3rd-Party support link
JavaAppletPlugin: Version: 14.9.0 - SDK 10.7 Outdated! Update
QuickTime Plugin: Version: 7.7.3
SharePointBrowserPlugin: Version: 14.3.9 - SDK 10.6 3rd-Party support link
Silverlight: Version: 5.0.61118.0 - SDK 10.6 3rd-Party support link
iPhotoPhotocast: Version: 7.0
Audio Plug-ins:
BluetoothAudioPlugIn: Version: 1.0 - SDK 10.9
AirPlay: Version: 1.9 - SDK 10.9
AppleAVBAudio: Version: 2.0.0 - SDK 10.9
iSightAudio: Version: 7.7.3 - SDK 10.9
3rd Party Preference Panes:
PenTablet 3rd-Party support link
Flash Player 3rd-Party support link
Flip4Mac WMV 3rd-Party support link
Growl 3rd-Party support link
Perian 3rd-Party support link
Bad Fonts:
None
Old Applications:
/Library/Application Support/Microsoft/MERP2.0
Microsoft Error Reporting: Version: 2.2.9 - SDK 10.4 3rd-Party support link
Microsoft Ship Asserts: Version: 1.1.4 - SDK 10.4 3rd-Party support link
Solver: Version: 1.0 - SDK 10.5 3rd-Party support link
/Applications/Microsoft Office 2011/Office/Add-Ins/Solver.app
SLLauncher: Version: 1.0 - SDK 10.5 3rd-Party support link
/Library/Application Support/Microsoft/Silverlight/OutOfBrowser/SLLauncher.app
SuperDuper!: Version: 2.6.4 - SDK 10.4 3rd-Party support link
/Applications/Microsoft Office 2011/Office
Microsoft Graph: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Database Utility: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Office Reminders: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Upload Center: Version: 14.3.9 - SDK 10.5 3rd-Party support link
My Day: Version: 14.3.9 - SDK 10.5 3rd-Party support link
SyncServicesAgent: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Open XML for Excel: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Alerts Daemon: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Database Daemon: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Chart Converter: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Clip Gallery: Version: 14.3.9 - SDK 10.5 3rd-Party support link
/Applications/Microsoft Office 2011
Microsoft PowerPoint: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Excel: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Outlook: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Word: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Document Connection: Version: 14.3.9 - SDK 10.5 3rd-Party support link
Microsoft Language Register: Version: 14.3.9 - SDK 10.5 3rd-Party support link
/Applications/Microsoft Office 2011/Additional Tools/Microsoft Language Register/Microsoft Language Register.app
CrucialMacScanner_UK: Version: 1.0 - SDK 10.0 3rd-Party support link
/Users/[redacted]/Documents/Software/CrucialMacScanner_UK.app
Microsoft AutoUpdate: Version: 2.3.6 - SDK 10.4 3rd-Party support link
/Library/Application Support/Microsoft/MAU2.0/Microsoft AutoUpdate.app
Spin Doctor: Version: 1.0 - SDK 10.5 3rd-Party support link
/Applications/Toast 11 Titanium/Spin Doctor.app
Time Machine:
Skip System Files: NO
Mobile backups: OFF
Auto backup: YES
Volumes being backed up:
Disc 2: Disk size: 3 Disk used: 3
Destinations:
TMMacpro2013 [Network] (Last used)
Total size: 21
Total number of backups: 63
Oldest backup: 2013-05-28 23:04:49 +0000
Last backup: 2014-02-13 15:51:39 +0000
Size of backup disk: Excellent
Backup size 21 > (Disk size 3 X 3)
Time Machine details may not be accurate.
All volumes being backed up may not be listed.
Top Processes by CPU:
191% Final Cut Pro
5% diskimages-helper
4% WindowServer
2% Google Chrome
1% backupd
Top Processes by Memory:
1.00 GB Final Cut Pro
338 MB mds
328 MB mds_stores
256 MB Finder
205 MB com.apple.IconServicesAgent
Virtual Memory Information:
3.52 GB Free RAM
3.93 GB Active RAM
1.63 GB Inactive RAM
942 MB Wired RAM
12.92 GB Page-ins
0 B Page-outsBeware of perceived RAM use. 10.9 uses RAM more efficiently:
About memory management in OSX 10.9 Mavericks
Memory is managed differently, and more efficiently in 10.9. It is (mostly) unique in the industry, but may become trend.
Let’s start with the basics. Mechanical disk drives are very slow, with access speeds in the 10s of milliseconds and transfer rates in the 200-400 Mbps range real world. SSDs are much faster, on the order of a couple of ms access and typically 1200-3000 mbps transfer rates. RAM is much faster than either, in the nanosecond access and transfer speeds of ~8 Gbps effective (1 GHz x 8 bits/byte).
These are rough numbers for comparison purposes only.
So the goal is to keep as much in RAM as possible. But if you run out of RAM what do you do?
Traditionally you take the least used RAM and write it to a special part of the disk, in a way that you can access it most efficiently - minimizing the disk delays. This is called a swap file because you swap RAM in and out of it.
10.9 has a new trick: it compresses RAM using the main processors. Rather than swapping stuff to disk (disks are slow), it actually uses the processor to compress memory and make, for example, 1 GB of physical RAM hold as much as 1.5GB. Similar approaches are used to make MP3 files 10x smaller than the real thing - there is redundancy in data and you can take advantage of that. Apple is making the following calculation: the processors can compress way faster than the disk can swap. And its also predicting that the processors are often partly idle - waiting for swap files or disk access. So rather than swap files around, its compresses the files ***in RAM***.
Compression works,. Tests show that on average it is faster, and that 4GB (i have 4 GB RAM) acts like 5 1/2 - 6GB. Wow.
So, 10.9 will load up most of your RAM, knowing that it can compress some when it needs to. So don’t worry too much that it may look like all your RAM is taken - yea, it is, but its OK.
The measures to look at are:
1. amount compressed. Compression means it has run out of RAM and needs more. As long as compression is low this is fine. In fact this is how 10.9 uses RAM more efficiently than 10.6,7 or 8. Contrary to common wisdom, it requires LESS RAM than 10.8. The colored indicator tells you who this is going - green (good), yellow( iffy) and red (bad).
2. amount swapped. Once it cannot compress any further, or can’t do so efficiently, jot begins old-fashioned swapping. This is a major slow-down and means you would benefit from more RAM. Tiny amounts are OK.
here's an article by Apple - but on th pre-10.9 memory management techniques....mostly still true, but read on.
http://support.apple.com/kb/HT1342?viewlocale=en_US
Bottom line - compression makes 10.9 use RAM more efficiently than previous OSX versions. It also makes the “ram used” indicator less meaningful, and mans you should monitor “compression” .
That said, RAM has always been one of the most cost effective upgrades possible. People spend too much on new machines and too little on more RAM.
Hope this helps,
Grant -
Yes it's another Mavericks slowing down my laptop thread :)
Hi there
I recently installed Mavericks, just before Xmas in fact, and noticed how slow it was from the start. Now I'm back at work, it's killing me!
First off, I had lots of problems with Mail, and something to do with Keychain (forgive me, laptop is a tool, I don't really understand how it works). I managed to get that working, although, I must say it still is slow at collecting mail from my various accounts.
Word, well that's just hysterical. I can sit and type a few lines, sit back and watch Word catch up with me over a minute or so, then have to go back and correct my terrible typing, it's painful and un-usable. I have noted on here to rebuild my Office Database, which I've done, and it appeared to have no problems.
So what to do? I heard about EtreCheck so have run that and will paste results below, I'm hoping that someone will spot something there that is really obvious and return me to fact Mac nirvana.
I'm on a 2011 MacBook Pro, 2.8ghz Intel Core i7, 4GB RAM. i don't have lots of 3rd party stuff installed, but do run Photoshop, Quark, Office and a few other apps.
Here's hoping for help, and thanks in advance!
Jonny
Hardware Information:
MacBook Pro (13-inch, Late 2011)
MacBook Pro - model: MacBookPro8,1
1 2.8 GHz Intel Core i7 CPU: 2 cores
4 GB RAM
Video Information:
Intel HD Graphics 3000 - VRAM: 384 MB
System Software:
OS X 10.9.1 (13B42) - Uptime: 0 days 5:7:3
Disk Information:
TOSHIBA MK7559GSXF disk0 : (750.16 GB)
EFI (disk0s1) <not mounted>: 209.7 MB
Macintosh HD (disk0s2) /: 749.3 GB (24.09 GB free)
Recovery HD (disk0s3) <not mounted>: 650 MB
MATSHITADVD-R UJ-8A8
USB Information:
Apple Inc. FaceTime HD Camera (Built-in)
Apple Inc. Apple Internal Keyboard / Trackpad
Apple Inc. BRCM2070 Hub
Apple Inc. Bluetooth USB Host Controller
LaCie LaCie Hard Drive USB 1 TB
disk1s1 (disk1s1) <not mounted>: 32 KB
Storage and Music Back Up (disk1s3) /Volumes/Storage and Music Back Up: 200 GB (78.22 GB free)
Time Machine (disk1s5) /Volumes/Time Machine: 799.94 GB (40.38 GB free)
Apple, Inc. Keyboard Hub
Apple, Inc Apple Keyboard
Western Digital Elements 10A2 1 TB
EFI (disk2s1) <not mounted>: 209.7 MB
JG MUSIC MASTER 07770872601 (disk2s2) /Volumes/JG MUSIC MASTER 07770872601: 999.83 GB (565.77 GB free)
Apple Computer, Inc. IR Receiver
FireWire Information:
Thunderbolt Information:
Apple Inc. thunderbolt_bus
Kernel Extensions:
com.paceap.kext.pacesupport.snowleopard (5.7.2)
Startup Items:
M-AudioXponent: Path: /Library/StartupItems/M-AudioXponent
PACESupport: Path: /Library/StartupItems/PACESupport
Problem System Launch Daemons:
[failed] com.apple.softwareupdated.plist 3rd-Party support link
[failed] com.apple.wdhelper.plist 3rd-Party support link
Problem System Launch Agents:
Launch Daemons:
[loaded] com.adobe.fpsaud.plist 3rd-Party support link
[loaded] com.adobe.SwitchBoard.plist 3rd-Party support link
[loaded] com.adobe.versioncueCS4.plist 3rd-Party support link
[loaded] com.cleverfiles.cfbackd.plist 3rd-Party support link
[loaded] com.oracle.java.Helper-Tool.plist 3rd-Party support link
[loaded] com.paceap.eden.licensed.plist 3rd-Party support link
[loaded] com.prosofteng.DriveGenius.locum.plist 3rd-Party support link
[loaded] PACESupport.plist 3rd-Party support link
Launch Agents:
[not loaded] com.adobe.AAM.Updater-1.0.plist 3rd-Party support link
[loaded] com.adobe.CS4ServiceManager.plist 3rd-Party support link
[loaded] com.adobe.CS5ServiceManager.plist 3rd-Party support link
[loaded] com.oracle.java.Java-Updater.plist 3rd-Party support link
User Launch Agents:
[loaded] com.adobe.AAM.Updater-1.0.plist 3rd-Party support link
[loaded] com.adobe.ARM.[...].plist 3rd-Party support link
[loaded] com.divx.agent.postinstall.plist 3rd-Party support link
[loaded] com.google.keystone.agent.plist 3rd-Party support link
[loaded] com.prosofteng.DGMonitor.plist 3rd-Party support link
[loaded] com.spotify.webhelper.plist 3rd-Party support link
User Login Items:
SmartDaemon
Caffeine
Google Drive
AdobeResourceSynchronizer
Internet Plug-ins:
JavaAppletPlugin: Version: Java 7 Update 25 Outdated! Update
OVSHelper: Version: 1.1 3rd-Party support link
Default Browser: Version: 537 - SDK 10.9
AdobePDFViewerNPAPI: Version: 10.1.8 3rd-Party support link
DivXBrowserPlugin: Version: 2.2 3rd-Party support link
FlashPlayer-10.6: Version: 11.9.900.170 - SDK 10.6 3rd-Party support link
Silverlight: Version: 5.1.20513.0 - SDK 10.6 3rd-Party support link
Flash Player: Version: 11.9.900.170 - SDK 10.6 Cannot contact Adobe
AmazonMP3DownloaderPlugin101737: Version: AmazonMP3DownloaderPlugin 1.0.17 - SDK 10.4 3rd-Party support link
QuickTime Plugin: Version: 7.7.3
AdobePDFViewer: Version: 10.1.8 3rd-Party support link
DirectorShockwave: Version: 11.6.8r638 3rd-Party support link
Audio Plug-ins:
BluetoothAudioPlugIn: Version: 1.0 - SDK 10.9
AirPlay: Version: 1.9 - SDK 10.9
AppleAVBAudio: Version: 2.0.0 - SDK 10.9
iSightAudio: Version: 7.7.3 - SDK 10.9
User Internet Plug-ins:
Google Earth Web Plug-in: Version: 7.1 3rd-Party support link
3rd Party Preference Panes:
Adobe Version Cue CS4 3rd-Party support link
DivX 3rd-Party support link
Flash Player 3rd-Party support link
Growl 3rd-Party support link
Java 3rd-Party support link
M-AudioXponent 3rd-Party support link
Bad Fonts:
None
Old Applications:
Audacity: Version: 2.0.2.0 - SDK 10.4 3rd-Party support link
/Applications/Audacity/Audacity.app
SmartDaemon: Version: 1.0 - SDK 10.5 3rd-Party support link
/Library/Application Support/CleverFiles/SmartDaemon.app
SLLauncher: Version: 1.0 - SDK 10.5 3rd-Party support link
/Library/Application Support/Microsoft/Silverlight/OutOfBrowser/SLLauncher.app
Disk Drill: Version: 1.8 - SDK 10.5 3rd-Party support link
XLD: Version: 20120226 - SDK 10.4 3rd-Party support link
Amazon MP3 Downloader: Version: INFO_PLIST_VERSION - SDK 10.4 3rd-Party support link
Senuti: Version: 1.2.9 - SDK 10.5 3rd-Party support link
/Users/JonnyReggae/Downloads/Senuti.app
Time Machine:
Mobile backups: OFF
Auto backup: NO - Auto backup turned off
Volumes being backed up:
Macintosh HD: Disk size: 697.84 GB Disk used: 675.41 GB
Destinations:
Time Machine [Local] (Last used)
Total size: 0 B
Total number of backups: (null)
Size of backup disk: Too small
Backup size 0 B < (Disk used 675.41 GB X 3)
Time Machine details may not be accurate.
All volumes being backed up may not be listed.
Top Processes by CPU:
4% WindowServer
1% Activity Monitor
1% EtreCheck
1% sysmond
0% Google Chrome
Top Processes by Memory:
106 MB Mail
90 MB Google Chrome
74 MB Finder
66 MB com.apple.WebKit.WebContent
66 MB iTunes
Virtual Memory Information:
162 MB Free RAM
880 MB Active RAM
744 MB Inactive RAM
1.03 GB Wired RAM
2.64 GB Page-ins
71 MB Page-outsYour memory usage is fine. Its green. Read this:
About memory management in OSX 10.9 Mavericks
Memory is managed differently, and more efficiently in 10.9. It is (mostly) unique in the industry, but may become trend.
Let’s start with the basics. Mechanical disk drives are very slow, with access speeds in the 10s of milliseconds and transfer rates in the 200-400 Mbps range real world. SSDs are much faster, on the order of a couple of ms access and typically 1200-3000 mbps transfer rates. RAM is much faster than either, in the nanosecond access and transfer speeds of ~8 Gbps effective (1 GHz x 8 bits/byte).
These are rough numbers for comparison purposes only.
So the goal is to keep as much in RAM as possible. But if you run out of RAM what do you do?
Traditionally you take the least used RAM and write it to a special part of the disk, in a way that you can access it most efficiently - minimizing the disk delays. This is called a swap file because you swap RAM in and out of it.
10.9 has a new trick: it compresses RAM using the main processors. Rather than swapping stuff to disk (disks are slow), it actually uses the processor to compress memory and make, for example, 1 GB of physical RAM hold as much as 1.5GB. Similar approaches are used to make MP3 files 10x smaller than the real thing - there is redundancy in data and you can take advantage of that. Apple is making the following calculation: the processors can compress way faster than the disk can swap. And its also predicting that the processors are often partly idle - waiting for swap files or disk access. So rather than swap files around, its compresses the files ***in RAM***.
Compression works,. Tests show that on average it is faster, and that 4GB (i have 4 GB RAM) acts like 5 1/2 - 6GB. Wow.
So, 10.9 will load up most of your RAM, knowing that it can compress some when it needs to. So don’t worry too much that it may look like all your RAM is taken - yea, it is, but its OK.
The measures to look at are:
1. amount compressed. Compression means it has run out of RAM and needs more. As long as compression is low this is fine. In fact this is how 10.9 uses RAM more efficiently than 10.6,7 or 8. Contrary to common wisdom, it requires LESS RAM than 10.8. The colored indicator tells you who this is going - green (good), yellow( iffy) and red (bad).
2. amount swapped. Once it cannot compress any further, or can’t do so efficiently, jot begins old-fashioned swapping. This is a major slow-down and means you would benefit from more RAM. Tiny amounts are OK.
here's an article by Apple - but on th pre-10.9 memory management techniques....mostly still true, but read on.
http://support.apple.com/kb/HT1342?viewlocale=en_US
Bottom line - compression makes 10.9 use RAM more efficiently than previous OSX versions. It also makes the “ram used” indicator less meaningful, and mans you should monitor “compression” .
That said, RAM has always been one of the most cost effective upgrades possible. People spend too much on new machines and too little on more RAM.
Hope this helps,
Grant -
Question about Database Access
Hello,
I have one question regarding database access from Java.
What are the other ways of connecting to database other than JDBC? This was one of the question I been asked by the interviewer. He says JDBC connection can slow down the perfomance when it comes large number of transactions?
Any insight or help will be very useful.
ThanksHe may have been referring to available "persistance managers" like Hibernate or the mechanisms build into EJB containers. However, as far as I know, they all use JDBC, and any speed-up is due to caching of data as objects.
-
Hi All,
I m using oc4j 10g and it slows down in 24 hrs and then i need to restart it.
Following are the configurations.
1- Web Serever : oc4j 10g running on server machine.
2- OS: Windows 2003
1- Database : Sql Server 2000 running on different server machine.
2-OS : Windows 2003
The application is used in Call Center as well as by branches.
The java.exe size reaches around 65 mb until i have set the xms parameters in start.bat file and now java.exe size shoots up to around 900 mb with random behavior.There is no congestion at database level.
Your quick response in this regard would be highly appreciated
Thanks in advanceChecking the connection pool configuration to make sure you have the proper max-connections and min-connections setting in data-sources.xml if your application accesses database. Also check the thread pool configuration in server.xml. And check the GC.
-Frances -
Timer Class not accurate and slows down my animation!?
Does anyknow how why my timer object is not accurate and why it slows down my animation that is also present on my GUI at the same time?
I have a timer in the form of 0.00 the left of the decimal point should represent a second but it doesnt, run my code and see for yourselves. below is my code if anyone can fix these 2 problems i will be very thankfull:
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.Shape;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;
import javax.swing.Timer;
import java.sql.*;
import java.text.*;
public class RT extends JFrame implements MouseMotionListener
//declares a number of swing componets to be used for the JFrame
private JTextArea infoJTextArea;
private JPanel showJPanel, startJPanel, helpJPanel, resultsJPanel;
private JLabel de4JLabel, de3JLabel, mainTitleJLabel, nameJLabel, ageJLabel,
deJLabel, de1JLabel, de2JLabel, timeJLabel,nameResultJLabel,
ageResultJLabel, timeResultsJLabel, ratingJLabel, coJLabel, shJLabel;
private JTextField nameJTextField, ageJTextField,nameResultJTextField,
ageResultsJTextField, timeResultsJTextField, ratingJTextField;
private JButton exitJButton, showJButton, loginJButton, startTestJButton,
tempObjectJButton;
private JScrollPane scroll;
public JComboBox colourJComboBox, sizeJComboBox, shapeJComboBox, speedJComboBox;
private static Connection dbcon;
int temp=0;
private String[] col = { "Red", "Blue", "Green","Yellow","Orange","Black"};
private String[] shapeA = { "Normal Rectangle", "Normal Circle", "Normal Oval","BIG Rectangle", "BIG Circle","BIG Oval","small rectangle","small circle", "small oval"};
private String[] speed = { "Fast", "Normal", "Slow"};
public int checking;
static int flag, flagshape, flagspeed;
// creates and sets up a number of varibles to be used by the class
public long timeLimit = 0;
DecimalFormat timeDec = new DecimalFormat (":00");
public int age;
public String name, shapeChoice="Normal Rectangle(Never selected anything)", colourChoice="Black(Never selected anything)";
private Timer TimeNow;
private JTextField timerJTextField;
ShapeMovingPanel testJPanel;
Random seed;
Shape shape;
Shape[] shapes = {new Rectangle2D.Double(50, 30, 75, 25),new Ellipse2D.Double(175, 125, 50, 50),new Ellipse2D.Double(90, 100, 75, 35),new Rectangle2D.Double(50, 30, 175, 125),new Ellipse2D.Double(175, 125, 125, 125),new Ellipse2D.Double(90, 100, 175, 135),new Rectangle2D.Double(50, 30, 55, 15),new Ellipse2D.Double(175, 125, 20,20),new Ellipse2D.Double(90, 100, 55, 15)};
//50, 30, 75, 25 change starting point here****************************************
public RT() // constructor method
seed = new Random();
shape = shapes[0];
//sets up the Timer
TimeNow = new Timer((1), new TimerListener());//++++++++++++++++++++++++++timer -17
createUserInterface(); // method that creates the user interface
private void createUserInterface()
new Thread(new Runnable()
public void run()
String results = "";
int count = 0;
boolean journeyOn = true;
while(journeyOn && count < 3)
try
Thread.sleep(1000);
catch(InterruptedException ie)
System.err.println("show interrupt: " + ie.getMessage());
journeyOn = false;
results += count++ + ", ";
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
dbcon = DriverManager.getConnection("jdbc:odbc:CMT3991", "", ""); // Access/ODBC
//connection ash used to connect to the user table in access
} catch(Exception eee)
eee.printStackTrace(); //exception if error occurs during the driver connection
System.out.println("* UserDA CONNECTED *");
}).start();
Container contentPane = getContentPane();
contentPane.setLayout( null );
// set up infoJTextField
infoJTextArea = new JTextArea();
infoJTextArea.setBounds( 20, 420, 550, 170 );
infoJTextArea.setEditable( false);
infoJTextArea.setText("\n Welcome to the reaction testing program, this " +
"program is designed to test your reactions in a \n"+
" number of different situations.\n"+"\n Please " +
"enter your name and age, or select show previous results.");
contentPane.add( infoJTextArea );
scroll = new JScrollPane(infoJTextArea);
scroll.setBounds( 20, 420, 550, 170 );
contentPane.add( scroll );
startJPanel = new JPanel();
startJPanel.setBounds( 16,16, 560, 375 );
startJPanel.setBorder(
new TitledBorder( "WELCOME - PLEASE ENTER YOUR NAME AND AGE:" ) );
startJPanel.setLayout( null );
contentPane.add( startJPanel );
//sets up a JPanel
mainTitleJLabel = new JLabel();
mainTitleJLabel.setIcon( new ImageIcon( "title.png" ) );
mainTitleJLabel.setBounds( 30, 10, 520, 170 );
mainTitleJLabel.setHorizontalAlignment( JLabel.CENTER );
startJPanel.add( mainTitleJLabel );
//creates a newJLabel
nameJLabel= new JLabel();
nameJLabel.setBounds( 52, 200, 70, 35 );
nameJLabel.setText("Name:");
startJPanel.add( nameJLabel);
//creates a new JTextField
nameJTextField = new JTextField();
nameJTextField.setBounds( 130, 200, 300, 24 );
startJPanel.add( nameJTextField );
//creates a newJLabel
ageJLabel = new JLabel();
ageJLabel.setBounds( 52, 245, 100, 35 );
ageJLabel.setText("Age:");
startJPanel.add( ageJLabel );
//creates a new JTextField
ageJTextField = new JTextField();
ageJTextField.setBounds( 130, 245, 300, 24 );
startJPanel.add( ageJTextField );
//creates a JButton
loginJButton = new JButton();
loginJButton.setBounds( 440, 200, 90, 24 );
loginJButton.setText( "Login" );
loginJButton.setBackground( Color.YELLOW );
startJPanel.add( loginJButton );
loginJButton.setEnabled(true);
// loginJButton.setVisible(true);
loginJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
// not necessary to pass events to these methods...
Login(); // calls the Login method
//creates a JButton
showJButton = new JButton();
showJButton.setBounds( 200, 320, 180, 24 );
showJButton.setText( "Show previous results" );
showJButton.setBackground( Color.YELLOW );
startJPanel.add( showJButton );
showJButton.setEnabled(true);
// showJButton.setVisible(true);
showJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
showData(); // calls the showData method
//sets up a JPanel
showJPanel = new JPanel();
showJPanel.setBounds( 16,16, 560, 375 );
showJPanel.setBorder(new TitledBorder( "PREVIOUS RESULTS:" ) );
showJPanel.setLayout( null );
contentPane.add( showJPanel );
//sets up a JPanel
helpJPanel = new JPanel();
helpJPanel.setBounds( 16,16, 560, 375 );
helpJPanel.setBorder(
new TitledBorder( "CHOOSE A NUMBER OF OPTIONS AND GET READY:" ) );
helpJPanel.setLayout( null );
helpJPanel.setVisible(false);
contentPane.add( helpJPanel );
//creates a newJLabel
deJLabel= new JLabel();
deJLabel.setBounds( 23, 390, 530, 35 );
deJLabel.setText("Details:");
contentPane.add( deJLabel);
//creates a newJLabel
coJLabel= new JLabel();
coJLabel.setBounds( 70, 40, 530, 35 );
coJLabel.setText("Choose a colour:");
helpJPanel.add( coJLabel);
//creates a newJLabel
de1JLabel= new JLabel();
de1JLabel.setBounds( 25, 100, 530, 35 );
de1JLabel.setText("You are about to start the reaction test, when you " +
"press the start button it will begin.");
helpJPanel.add( de1JLabel);
//creates a newJLabel
de1JLabel= new JLabel();
de1JLabel.setBounds(160, 145, 530, 35 );
de1JLabel.setText("Simply catch the moving item and click.");
helpJPanel.add( de1JLabel);
colourJComboBox = new JComboBox( col );
colourJComboBox.setBounds( 70, 70, 135, 21 );
colourJComboBox.setMaximumRowCount( 3 );
helpJPanel.add( colourJComboBox );
colourJComboBox.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
colourChoice="Black";
int x = colourJComboBox.getSelectedIndex();
if( x == 0)
flag = 1;
colourChoice="Red";
else if(x == 1)
flag = 2;
colourChoice="Blue";
else if(x == 2)
flag = 3;
colourChoice="Green";
else if(x == 3)
flag = 4;
colourChoice="Yellow";
else if(x == 4)
flag = 5;
colourChoice="Orange";
else if(x == 5)
flag = 6;
colourChoice="Black";
shJLabel= new JLabel();
shJLabel.setBounds( 340, 40, 530, 35 );
shJLabel.setText("Choose a shape and size:");
helpJPanel.add( shJLabel);
shapeJComboBox = new JComboBox( shapeA );
shapeJComboBox.setBounds( 340, 70, 135, 21 );
shapeJComboBox.setMaximumRowCount( 3 );
helpJPanel.add( shapeJComboBox );
shapeJComboBox.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
int xshape = shapeJComboBox.getSelectedIndex();
//shapeChoice="Normal Rectangle";
if( xshape == 0)
{ flagshape = 1;
shapeChoice="Normal Rectangle";
else if(xshape == 1)
{ flagshape = 2;
shapeChoice="Normal Circle";
else if(xshape == 2)//**********here
{ flagshape = 3;
shapeChoice="Normal Oval";
else if(xshape == 3)
{ flagshape = 4;
shapeChoice="BIG Rectangle";
else if(xshape == 4)
{ flagshape = 5;
shapeChoice="BIG Circle";
else if(xshape == 5)
{ flagshape = 6;
shapeChoice="BIG Oval";
else if(xshape == 6)
flagshape = 7;
shapeChoice="small rectangle";
else if(xshape == 7)
{ flagshape = 8;
shapeChoice="small circle";
else if(xshape == 8)
{ flagshape = 9;
shapeChoice="small oval";
/* speedJComboBox = new JComboBox( speed );
speedJComboBox.setBounds( 10, 150, 135, 21 );
speedJComboBox.setMaximumRowCount( 3 );
helpJPanel.add( speedJComboBox );
speedJComboBox.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
int xspeed = speedJComboBox.getSelectedIndex();
if( xspeed == 0)
flagspeed = 1;
else if(xspeed == 1)
flagspeed = 2;
else
flagspeed = 3;
System.out.println(flagspeed);
//creates a newJLabel
de2JLabel= new JLabel();
de2JLabel.setBounds( 20, 380, 70, 35 );
de2JLabel.setText("Details:");
helpJPanel.add( de2JLabel);
//creates a JButton
startTestJButton = new JButton();
startTestJButton.setBounds( 185, 205, 180, 60 );
startTestJButton.setText( "START" );
startTestJButton.setBackground( Color.YELLOW );
helpJPanel.add( startTestJButton );
startTestJButton.setEnabled(true);
// startTestJButton.setVisible(true);
startTestJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
startTest();
//sets up an animation panel
testJPanel = new ShapeMovingPanel(this);
testJPanel.setBounds( 16,16, 560, 375 );
testJPanel.setBorder(new TitledBorder("Click the moving object:"));
testJPanel.setLayout( null );
testJPanel.setVisible(false);
contentPane.add( testJPanel );
testJPanel.addMouseMotionListener(this);
//creates a newJLabel
timeJLabel = new JLabel();
timeJLabel.setBounds( 440, 330, 100, 35 );
timeJLabel.setText("Time:");
testJPanel.add( timeJLabel );
//creates a new JTextField
timerJTextField = new JTextField();
timerJTextField.setBounds( 480, 335, 60, 24 );
timerJTextField.setText(String.valueOf(timeLimit));
timerJTextField.setHorizontalAlignment(JTextField.CENTER );
timerJTextField.setEditable(false);
timerJTextField.setBackground( Color.YELLOW );
testJPanel.add( timerJTextField );
resultsJPanel = new JPanel();
resultsJPanel.setBounds( 16,16, 560, 375 );
resultsJPanel.setBorder(new TitledBorder("HERE ARE YOUR RESULTS:"));
resultsJPanel.setLayout( null );
resultsJPanel.setVisible(false);
contentPane.add( resultsJPanel );
de3JLabel= new JLabel();
de3JLabel.setBounds(20, 200, 530, 35 );
de3JLabel.setText("Below is also the movements you made with your mouse, " +
"you may exit the program now.");
resultsJPanel.add( de3JLabel);
de4JLabel= new JLabel();
de4JLabel.setBounds(135, 245, 530, 35 );
de4JLabel.setText("Thank you for trying the Reaction Testing program");
resultsJPanel.add( de4JLabel);
//creates a newJLabel
nameResultJLabel= new JLabel();
nameResultJLabel.setBounds( 62, 55, 50, 35 );
nameResultJLabel.setText("Name:");
resultsJPanel.add( nameResultJLabel);
//creates a new JTextField
nameResultJTextField = new JTextField();
nameResultJTextField.setBounds( 140, 55, 300, 24 );
resultsJPanel.add( nameResultJTextField );
nameResultJTextField.setEditable(false);
//creates a newJLabel
ageResultJLabel = new JLabel();
ageResultJLabel.setBounds( 62, 90, 100, 35 );
ageResultJLabel.setText("Age:");
resultsJPanel.add( ageResultJLabel );
//creates a new JTextField
ageResultsJTextField = new JTextField();
ageResultsJTextField.setBounds( 140, 90, 300, 24 );
resultsJPanel.add( ageResultsJTextField );
ageResultsJTextField.setEditable(false);
//creates a newJLabel
timeResultsJLabel = new JLabel();
timeResultsJLabel.setBounds( 62, 125, 100, 35 );
timeResultsJLabel.setText("Time taken:");
resultsJPanel.add( timeResultsJLabel );
//creates a new JTextField
timeResultsJTextField = new JTextField();
timeResultsJTextField.setBounds( 140, 125, 300, 24 );
resultsJPanel.add( timeResultsJTextField );
timeResultsJTextField.setEditable(false);
//creates a newJLabel
ratingJLabel = new JLabel();
ratingJLabel.setBounds( 62, 160, 100, 35 );
ratingJLabel.setText("Your Rating:");
resultsJPanel.add( ratingJLabel );
ratingJTextField = new JTextField();
ratingJTextField.setBounds( 140, 160, 300, 24 );
resultsJPanel.add( ratingJTextField );
ratingJTextField.setEditable(false);
//creates a JButton
exitJButton = new JButton();
exitJButton.setBounds( 235, 310, 90, 24 );
exitJButton.setText( "Exit" );
exitJButton.setBackground( Color.WHITE );
resultsJPanel.add( exitJButton );
exitJButton.setEnabled(true);
exitJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when exitJButton is pressed
public void actionPerformed( ActionEvent event )
System.exit(0); //closes the programme
}); // end anonymous inner class
addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent e)
System.exit(0);
// set properties of application's window
setTitle( "Reaction Tester - CMT3991" ); // set JFrame's title bar string
//setSize( 1280,995 ); // set width and height of JFrame
setSize( 608, 650 ); // set width and height of JFrame
setVisible( true ); // display JFrame on screen
//** set up of method main */
public static void main( String[] args )
RT application = new RT();
application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
} // end method main
* action listener for TimeNow Timer
private class TimerListener implements ActionListener
public void actionPerformed(ActionEvent event)
timeLimit ++;
if (timeLimit==100)
temp++;
timeLimit=0;
timerJTextField.setText(String.valueOf(temp +""+timeDec.format(timeLimit)));
private void Login()
try
name = nameJTextField.getText();
age = Integer.parseInt(ageJTextField.getText());
startJPanel.setVisible(false);
showJPanel.setVisible(false);
helpJPanel.setVisible(true);
infoJTextArea.setText("\n Welcome "+name+" you will soon know how " +
"fast your reactions are.");
catch (NumberFormatException exception)
JOptionPane.showMessageDialog(this,
"There is either a blank field or a number hasn't been entered",
"Input Type error", JOptionPane.ERROR_MESSAGE);
//shows this is something has been entered wrong
private void startTest()
helpJPanel.setVisible(false);
// System.out.println(""+ seed.nextInt(shapes.length));
//shape = shapes[seed.nextInt(shapes.length)];//****************************
if (flagshape==1)
shape = shapes[0];// changed colour here***************************
else if (flagshape==2)
shape = shapes[1];// changed colour here***************************
else if (flagshape==3)
shape = shapes[2];// changed colour here***************************
else if (flagshape==4)
shape = shapes[3];// changed colour here***************************
else if (flagshape==5)
shape = shapes[4];// changed colour here***************************
else if (flagshape==6)
shape = shapes[5];// changed colour here***************************
else if (flagshape==7)
shape = shapes[6];// changed colour here***************************
else if (flagshape==8)
shape = shapes[7];// changed colour here***************************
else if (flagshape==9)
shape = shapes[8];// changed colour here***************************
// shape = shapes[8];
System.out.println(shape.toString());
testJPanel.setShape(shape);
testJPanel.setVisible(true);
testJPanel.start();
infoJTextArea.setText("");
TimeNow.start();
* called by animation panel after shape is clicked
public void stop()
TimeNow.stop();
movingObject();
* this will compete with your animation
* ie, it will slow it down or make it appear jerky
public void mouseMoved(MouseEvent e)
saySomething("\n Mouse moved", e);
public void mouseDragged(MouseEvent e)
saySomething("\n Mouse dragged", e);
void saySomething(String eventDescription, MouseEvent e)
infoJTextArea.append(eventDescription
+ " (" + e.getX() + "," + e.getY() + ")");
infoJTextArea.setCaretPosition(infoJTextArea.getDocument().getLength());
private void movingObject()
TimeNow.stop();
//timeLimit;
testJPanel.setVisible(false);
resultsJPanel.setVisible(true);
nameResultJTextField.setText(name);
ageResultsJTextField.setText(String.valueOf(age)+" years old");
System.out.println("shape used: "+shapeChoice);
String mouse = infoJTextArea.getText();
String tick = timerJTextField.getText();
timeResultsJTextField.setText(tick);
try
// create a file called welch.txt
final FileWriter outputFile = new FileWriter("Backup_of_"+name+"s_results.txt", true);
final BufferedWriter outputBuffer = new BufferedWriter(outputFile);
// converts data to a formatted string
final PrintWriter printstream = new PrintWriter(outputBuffer);
printstream.println("THIS IS A BACKUP");
printstream.println("The person's name is: "+name);
printstream.println("There age is: "+age);
printstream.println("Time taken: "+tick+" seconds");
printstream.println("The Shape and size was: "+shapeChoice);
printstream.println("It's colour was: "+colourChoice);
printstream.println("The mouse moved as follows: "+mouse);
//states what needs to be printed to the new file
printstream.close(); // closes teh printstream
catch(IOException eio)
//catchs the IO exception
if(temp<5.00)
ratingJTextField.setText("Thierry Henry");
else if(timeLimit<=10)
ratingJTextField.setText("Average");
else if(timeLimit<=15)
ratingJTextField.setText("You gotta be fat or something");
else if(timeLimit<=20)
ratingJTextField.setText("See a doctor");
else if(timeLimit>20)
ratingJTextField.setText("DO YOU KNOW WHAT YOU DOING!?");
String rate=ratingJTextField.getText();
try
Statement st = dbcon.createStatement();
String cmd = "INSERT INTO users (Name, Age, Time_Taken, Rating, Mouse_Movement,Shape_and_Size, Shape_Colour) VALUES ('" + name + "' , " + age + " , '" + tick + "' , '" + rate+"','"+ mouse+"','"+ shapeChoice+"','"+ colourChoice+"');";
//creates a SQL statement and executes it
st.executeUpdate(cmd);
st.close();//close the statement
} catch (Exception eDA)
eDA.printStackTrace();
private void showData()
// pretend this takes awhile -> 3 seconds (count)
new Thread(new Runnable()
public void run()
String results = "";
int count = 0;
boolean journeyOn = true;
while(journeyOn && count < 3)
try
Thread.sleep(1000);
catch(InterruptedException ie)
System.err.println("show interrupt: " + ie.getMessage());
journeyOn = false;
results += count++ + ", ";
infoJTextArea.setText("Here are your results:\n"+results);
startJPanel.setVisible(false);
showJPanel.setVisible(true);
}).start();
class ShapeMovingPanel extends JPanel implements ActionListener
RT host;
Timer timer;
Shape shape, xformed;
int x, y, dx, dy;
public ShapeMovingPanel(RT rt)
timer = new Timer(-20, this);
host = rt;
/* if (rt.flagspeed==1)
timer = new Timer(-20, this);
else if (rt.flagspeed==2)
timer = new Timer(20, this);
else if (rt.flagspeed==3)
timer = new Timer(100, this);
//change speed here******************************
x = 0;//0
y = 0;//0
dx =2;//2
dy = 3;//3
//setBackground(Color.pink);
addMouseListener(new ShapeTender());
public void actionPerformed(ActionEvent e)
int w = getWidth();
int h = getHeight();
if(w <= 0 || h <= 0)
return;
checkBoundries(w,h);
x += dx;
y += dy;
repaint();
private void checkBoundries(int w, int h)
Rectangle r = xformed.getBounds();
Insets insets = getInsets();
if(r.x + dx < insets.left || r.x + r.width + dx > w - insets.right)
dx *= -1;
if(r.y + dy < insets.top || r.y + r.height + dy > h - insets.bottom)
dy *= -1;
protected void paintComponent(Graphics g)
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
AffineTransform at = AffineTransform.getTranslateInstance(x, y);
if (RT.flag==1)
{g2.setPaint(Color.red);// changed colour here***************************
else if (RT.flag==2)
{g2.setPaint(Color.blue);// changed colour here***************************
else if (RT.flag==3)
{g2.setPaint(Color.green);// changed colour here***************************
else if (RT.flag==4)
{g2.setPaint(Color.yellow);// changed colour here***************************
else if (RT.flag==5)
{g2.setPaint(Color.orange);// changed colour here***************************
else if (RT.flag==6)
{g2.setPaint(Color.black);// changed colour here***************************
xfoI'm (being lazy and) using the older RT app posted on your last thread. I removed the
TimeNow timer from the RT class and used System.currentTimeMillis (as you requested) to
determine the elapsed time during the animation (see "startTest", "stop" and
"movingObject" methods). Also changed the DecimalFormat to NumberFormat and set the
"maximumFractionDigits" to "2" so it will truncate the fraction to two digits (more simple
than before). Made arrangements for the ShapeMovingPanel class to update the
"timerJTextField" during the animation (RT.updateTime method).
The MouseMotionListener is causing the animation to appear jerky and uneven. The
"mouseMoved" method is very busy while the mouse is moving. You might consider recording
the "mousePressed" events instead of the "mouseMoved" events, ie, the events where the user
is attempting to click inside the moving shape. It would allow the app to be more
responsive and might eliminate the uneven motion of the animating shape.
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.io.*;
import java.text.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;
import javax.swing.Timer;
public class RT extends JFrame implements MouseMotionListener
//declares a number of swing componets to be used for the JFrame
private JTextArea infoJTextArea;
private JPanel showJPanel, startJPanel, helpJPanel, resultsJPanel;
private JLabel de4JLabel, de3JLabel, mainTitleJLabel, nameJLabel, ageJLabel,
deJLabel, de1JLabel, de2JLabel, timeJLabel,nameResultJLabel,
ageResultJLabel, timeResultsJLabel, ratingJLabel;
private JTextField nameJTextField, ageJTextField,nameResultJTextField,
ageResultsJTextField, timeResultsJTextField, ratingJTextField;
private JButton exitJButton, showJButton, loginJButton, startTestJButton,
tempObjectJButton;
private JScrollPane scroll;;
// creates and sets up a number of varibles to be used by the class
private long startTime;
private long endTime;
public int timeLimit = 0;
public int age;
public String name;
private JTextField timerJTextField;
ShapeMovingPanel testJPanel;
NumberFormat timeDec;
Random seed;
Shape shape;
Shape[] shapes = {
new Rectangle2D.Double(50, 30, 75, 25),
new Ellipse2D.Double(175, 125, 50, 50),
new Ellipse2D.Double(90, 100, 75, 35)
public RT()
timeDec = NumberFormat.getInstance();
timeDec.setMaximumFractionDigits(2);
seed = new Random();
shape = shapes[0];
createUserInterface();
private void createUserInterface()
Container contentPane = getContentPane();
contentPane.setLayout( null );
// set up infoJTextField
infoJTextArea = new JTextArea();
infoJTextArea.setBounds( 20, 420, 550, 170 );
infoJTextArea.setEditable( false);
infoJTextArea.setText("\n Welcome to the reaction testing program, this " +
"program is designed to test your reactions in a \n"+
" number of different situations.\n"+"\n Please " +
"enter your name and age, or select show previous results.");
contentPane.add( infoJTextArea );
scroll = new JScrollPane(infoJTextArea);
scroll.setBounds( 20, 420, 550, 170 );
contentPane.add( scroll );
startJPanel = new JPanel();
startJPanel.setBounds( 16,16, 560, 375 );
startJPanel.setBorder(
new TitledBorder( "WELCOME -PLEASE ENTER YOUR NAME AND AGE:" ) );
startJPanel.setLayout( null );
contentPane.add( startJPanel );
//sets up a JPanel
mainTitleJLabel = new JLabel();
mainTitleJLabel.setIcon( new ImageIcon( "title.png" ) );
mainTitleJLabel.setBounds( 30, 10, 520, 170 );
mainTitleJLabel.setHorizontalAlignment( JLabel.CENTER );
startJPanel.add( mainTitleJLabel );
//creates a newJLabel
nameJLabel= new JLabel();
nameJLabel.setBounds( 52, 200, 70, 35 );
nameJLabel.setText("Name:");
startJPanel.add( nameJLabel);
//creates a new JTextField
nameJTextField = new JTextField();
nameJTextField.setBounds( 130, 200, 300, 24 );
startJPanel.add( nameJTextField );
//creates a newJLabel
ageJLabel = new JLabel();
ageJLabel.setBounds( 52, 245, 100, 35 );
ageJLabel.setText("Age:");
startJPanel.add( ageJLabel );
//creates a new JTextField
ageJTextField = new JTextField();
ageJTextField.setBounds( 130, 245, 300, 24 );
startJPanel.add( ageJTextField );
//creates a JButton
loginJButton = new JButton();
loginJButton.setBounds( 440, 200, 90, 24 );
loginJButton.setText( "Login" );
loginJButton.setBackground( Color.YELLOW );
startJPanel.add( loginJButton );
loginJButton.setEnabled(true);
loginJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
// not necessary to pass events to these methods...
Login(); // calls the Login method
//creates a JButton
showJButton = new JButton();
showJButton.setBounds( 200, 320, 180, 24 );
showJButton.setText( "Show previous results" );
showJButton.setBackground( Color.YELLOW );
startJPanel.add( showJButton );
showJButton.setEnabled(true);
showJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
showData(); // calls the showData method
//sets up a JPanel
showJPanel = new JPanel();
showJPanel.setBounds( 16,16, 560, 375 );
showJPanel.setBorder(new TitledBorder( "PREVIOUS RESULTS:" ) );
showJPanel.setLayout( null );
contentPane.add( showJPanel );
//sets up a JPanel
helpJPanel = new JPanel();
helpJPanel.setBounds( 16,16, 560, 375 );
helpJPanel.setBorder(
new TitledBorder( "HELP DETAILS:" ) );
helpJPanel.setLayout( null );
helpJPanel.setVisible(false);
contentPane.add( helpJPanel );
//creates a newJLabel
deJLabel= new JLabel();
deJLabel.setBounds( 23, 390, 530, 35 );
deJLabel.setText("Details:");
contentPane.add( deJLabel);
//creates a newJLabel
de1JLabel= new JLabel();
de1JLabel.setBounds( 25, 100, 530, 35 );
de1JLabel.setText("You are about to start the reaction test, when you " +
"press the start button it will begin.");
helpJPanel.add( de1JLabel);
//creates a newJLabel
de1JLabel= new JLabel();
de1JLabel.setBounds(160, 145, 530, 35 );
de1JLabel.setText("Simply catch the moving item and click.");
helpJPanel.add( de1JLabel);
//creates a newJLabel
de2JLabel= new JLabel();
de2JLabel.setBounds( 20, 380, 70, 35 );
de2JLabel.setText("Details:");
helpJPanel.add( de2JLabel);
//creates a JButton
startTestJButton = new JButton();
startTestJButton.setBounds( 185, 205, 180, 60 );
startTestJButton.setText( "START" );
startTestJButton.setBackground( Color.YELLOW );
helpJPanel.add( startTestJButton );
startTestJButton.setEnabled(true);
startTestJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when search is pressed
public void actionPerformed( ActionEvent event )
startTest();
//sets up an animation panel
testJPanel = new ShapeMovingPanel(this);
testJPanel.setBounds( 16,16, 560, 375 );
testJPanel.setBorder(new TitledBorder("Click the moving object:"));
testJPanel.setLayout( null );
testJPanel.setVisible(false);
contentPane.add( testJPanel );
// this is causing the animation to appear uneven
// you can try the app with and without this to see
// testJPanel.addMouseMotionListener(this);
//creates a newJLabel
timeJLabel = new JLabel();
timeJLabel.setBounds( 440, 330, 100, 35 );
timeJLabel.setText("Time:");
testJPanel.add( timeJLabel );
//creates a new JTextField
timerJTextField = new JTextField();
timerJTextField.setBounds( 480, 335, 60, 24 );
timerJTextField.setText(String.valueOf(timeLimit));
timerJTextField.setHorizontalAlignment(JTextField.CENTER );
timerJTextField.setEditable(false);
timerJTextField.setBackground( Color.YELLOW );
testJPanel.add( timerJTextField );
resultsJPanel = new JPanel();
resultsJPanel.setBounds( 16,16, 560, 375 );
resultsJPanel.setBorder(new TitledBorder("HERE ARE YOUR RESULTS:"));
resultsJPanel.setLayout( null );
resultsJPanel.setVisible(false);
contentPane.add( resultsJPanel );
de3JLabel= new JLabel();
de3JLabel.setBounds(20, 200, 530, 35 );
de3JLabel.setText("Below is also the movements you made with your mouse, " +
"you may exit the program now.");
resultsJPanel.add( de3JLabel);
de4JLabel= new JLabel();
de4JLabel.setBounds(135, 245, 530, 35 );
de4JLabel.setText("Thank you for trying the Reaction Testing program");
resultsJPanel.add( de4JLabel);
//creates a newJLabel
nameResultJLabel= new JLabel();
nameResultJLabel.setBounds( 62, 55, 50, 35 );
nameResultJLabel.setText("Name:");
resultsJPanel.add( nameResultJLabel);
//creates a new JTextField
nameResultJTextField = new JTextField();
nameResultJTextField.setBounds( 140, 55, 300, 24 );
resultsJPanel.add( nameResultJTextField );
nameResultJTextField.setEditable(false);
//creates a newJLabel
ageResultJLabel = new JLabel();
ageResultJLabel.setBounds( 62, 90, 100, 35 );
ageResultJLabel.setText("Age:");
resultsJPanel.add( ageResultJLabel );
//creates a new JTextField
ageResultsJTextField = new JTextField();
ageResultsJTextField.setBounds( 140, 90, 300, 24 );
resultsJPanel.add( ageResultsJTextField );
ageResultsJTextField.setEditable(false);
//creates a newJLabel
timeResultsJLabel = new JLabel();
timeResultsJLabel.setBounds( 62, 125, 100, 35 );
timeResultsJLabel.setText("Time taken:");
resultsJPanel.add( timeResultsJLabel );
//creates a new JTextField
timeResultsJTextField = new JTextField();
timeResultsJTextField.setBounds( 140, 125, 300, 24 );
resultsJPanel.add( timeResultsJTextField );
timeResultsJTextField.setEditable(false);
//creates a newJLabel
ratingJLabel = new JLabel();
ratingJLabel.setBounds( 62, 160, 100, 35 );
ratingJLabel.setText("Your Rating:");
resultsJPanel.add( ratingJLabel );
ratingJTextField = new JTextField();
ratingJTextField.setBounds( 140, 160, 300, 24 );
resultsJPanel.add( ratingJTextField );
ratingJTextField.setEditable(false);
//creates a JButton
exitJButton = new JButton();
exitJButton.setBounds( 235, 310, 90, 24 );
exitJButton.setText( "Exit" );
exitJButton.setBackground( Color.WHITE );
resultsJPanel.add( exitJButton );
exitJButton.setEnabled(true);
exitJButton.addActionListener(
new ActionListener() // adds an action listener,anonymous inner class
// event handler called when exitJButton is pressed
public void actionPerformed( ActionEvent event )
System.exit(0); //closes the programme
}); // end anonymous inner class
addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent e)
System.exit(0);
// set properties of application's window
setTitle( "Reaction Tester - CMT3991" ); // set JFrame's title bar string
//setSize( 1280,995 ); // set width and height of JFrame
setSize( 608, 650 ); // set width and height of JFrame
setVisible( true ); // display JFrame on screen
//** set up of method main */
public static void main( String[] args )
RT application = new RT();
application.setDefaultCloseOperation( EXIT_ON_CLOSE );
} // end method main
private void Login()
try
name = nameJTextField.getText();
age = Integer.parseInt(ageJTextField.getText());
startJPanel.setVisible(false);
showJPanel.setVisible(false);
helpJPanel.setVisible(true);
infoJTextArea.setText("\n Welcome "+name+" you will soon know how " +
"fast your reactions are");
catch (NumberFormatException exception)
JOptionPane.showMessageDialog(this,
"There is either a blank field or a number hasn't been entered",
"Input Type error", JOptionPane.ERROR_MESSAGE);
//shows this is something has been entered wrong
private void startTest()
helpJPanel.setVisible(false);
shape = shapes[seed.nextInt(shapes.length)];
testJPanel.setShape(shape);
testJPanel.setVisible(true);
testJPanel.start();
startTime = System.currentTimeMillis();
infoJTextArea.setText("");
* called by animation panel after shape is clicked
public void stop()
endTime = System.currentTimeMillis();
movingObject();
* called by timer actionPerformed in ShapeMovingPanel
public void updateTime()
long timeNow = System.currentTimeMillis();
double elapsed = (timeNow - startTime)/1000.0;
timerJTextField.setText(timeDec.format(elapsed));
* this will compete with your animation
* ie, it will slow it down or make it appear jerky
public void mouseMoved(MouseEvent e)
saySomething("\n Mouse moved", e);
public void mouseDragged(MouseEvent e)
saySomething("\n Mouse dragged", e);
void saySomething(String eventDescription, MouseEvent e)
infoJTextArea.append(eventDescription
+ " (" + e.getX() + "," + e.getY() + ")");
infoJTextArea.setCaretPosition(infoJTextArea.getDocument().getLength());
private void movingObject()
testJPanel.setVisible(false);
resultsJPanel.setVisible(true);
nameResultJTextField.setText(name);
ageResultsJTextField.setText(String.valueOf(age)+" years old");
double elapsedTime = (endTime - startTime)/1000.0;
timeLimit = (int)elapsedTime;
timeResultsJTextField.setText(timeDec.format(elapsedTime)+" seconds");
String mouse = infoJTextArea.getText();
String tick = timeDec.format(elapsedTime);
try
// create a file called welch.txt
final FileWriter outputFile = new FileWriter(name+".txt", true);
final BufferedWriter outputBuffer = new BufferedWriter(outputFile);
// converts data to a formatted string
final PrintWriter printstream = new PrintWriter(outputBuffer);
printstream.println("The person's name is: "+name);
printstream.println("There age is: "+age);
printstream.println("Time taken: "+tick+" seconds");
printstream.println("The mouse moved as follows: "+mouse);
//states what needs to be printed to the new file
printstream.close(); // closes teh printstream
catch(IOException eio)
//catchs the IO exception
if(timeLimit<5)
ratingJTextField.setText("Thierry Henry");
if(timeLimit>5)
ratingJTextField.setText("Average");
if(timeLimit>10)
ratingJTextField.setText("You gotta be fat or something");
if(timeLimit>20)
ratingJTextField.setText("See a doctor");
String rate=ratingJTextField.getText();
private void showData()
// String results = "";
// infoJTextArea.setText("Here are your results:\n"+results);
startJPanel.setVisible(false);
showJPanel.setVisible(true);
class ShapeMovingPanel extends JPanel implements ActionListener
RT host;
Timer timer;
Shape shape, xformed;
int x, y, dx, dy;
public ShapeMovingPanel(RT rt)
host = rt;
timer = new Timer(25, this);
x = 0;
y = 0;
dx = 2;
dy = 3;
setBackground(Color.pink);
addMouseListener(new ShapeTender());
public void actionPerformed(ActionEvent e)
int w = getWidth();
int h = getHeight();
if(w <= 0 || h <= 0)
return;
checkBoundries(w,h);
x += dx;
y += dy;
repaint();
// update RT.timerJTextField
host.updateTime();
private void checkBoundries(int w, int h)
Rectangle r = xformed.getBounds();
Insets insets = getInsets();
if(r.x + dx < insets.left || r.x + r.width + dx > w - insets.right)
dx *= -1;
if(r.y + dy < insets.top || r.y + r.height + dy > h - insets.bottom)
dy *= -1;
protected void paintComponent(Graphics g)
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
AffineTransform at = AffineTransform.getTranslateInstance(x, y);
g2.setPaint(Color.red);
xformed = at.createTransformedShape(shape);
g2.draw(xformed);
public void start()
if(!timer.isRunning())
timer.start();
public void setShape(Shape s)
shape = s;
Rectangle r = shape.getBounds();
x = r.x;
y = r.y;
repaint();
private class ShapeTender extends MouseAdapter
public void mousePressed(MouseEvent e)
if(xformed.contains(e.getPoint()))
timer.stop();
host.stop();
}
Maybe you are looking for
-
Transfer balance from one recon account to another one
Hi Guru One vendor was assigned by wrong recon account but 4 postings happened in MIRO with out changing the recon account in that vendor . After this they changed the recon account and reversed those 4 documents(which is posted in wrong recon accoun
-
When using the search function in the mail app (IOS 8.1.3) within "all inboxes" using the name of the sender "Smith" the search delivers a long list of e-mails sorted by date from the newest to the oldest. It shows more results when "All Mailboxes" i
-
How to Measure file transfer speed in iChat
hi guys, is there anyway to measure the file transfer rate ,while sending o receiving a specific file in iChat?
-
Enable ethernet port on the QIP6416 set top box
Please :-)
-
How to print two delivery challans in one single page
Hi Experts, Here we have a requirement that, The user wants the two Delivery challan outputs in one page. and also for some documents he requires header and for some documents he doesn't require, for this what condition should require. Any idea regar