I've got an Oracle stored procedure which I am calling from a Java applet. This procedure takes more than 20 mins to finish and returns no results.
Is there any way to know when the procedure ends? (Prefferably without having to alter the procedure's code).
The procedure does a lot of delete/update/insert queries to several tables.
Up until now I have tried this:
Correct me if I'm wrong, but
I believe thatwaits until the statement is executed.
If your procedure takes 20 minutes, your code would stop at this line 4 for 20minutes.
If your execute() would have returned a rs, you would now immediately after executing line 4.
If execute() returned null, rs will stay null.
No piece of code you have put below line 4 will change rs.
It does, that's the main reason the statement execution is in a thread.
I was under the impression that rs becomes true when the stored procedure ends execution.
It doesn't though. In my case it returns false but it will do!
I believe that execute blocks. More logging statements would certainly help you.
True! I could use logging statements and check these to see when the stored procedure ends but it costs a lot!
If we assume that the logs are a table I would have to every so often run a query there to check if the procedure ended.
Doesn't sound like the best solution to me.
Thank you for your help both!
subject: How can I know when a stored procedure finishes execution?