what is the difference between stop and abort?
Answers were Sorted based on User's Feedback
Answer / vijay
Do not use abort unless absolutely necessary. It is messy.
Using stop is a cleaner way, and because it is cleaner, it
often takes more time.
Here's the difference:
ABORT is equivalent to:
1. Kill -9 on Unix (NOT kill -7) but YES, Kill -9
2. SIGTERM ABEND (Force ABEND) on Mainframe
3. Windows FORCE QUIT on application.
What does this do?
Each session uses SHARED/LOCKED (semaphores) memory blocks.
The ABORT function kills JUST THE CODE threads, leaving the
memory LOCKED and SHARED and allocated. The good news: It
appears as if AIX Operating system cleans up these lost
memory blocks. The bad news? Most other operating systems
DO NOT CLEAR THE MEMORY, leaving the memory "taken" from
the system. The only way to clear this memory is to warm-
boot/cold-boot (restart) the informatica SERVER machine,
yes, the entire box must be re-started to get the memory
back.
If you find your box running slower and slower over time,
or not having enough memory to allocate new sessions, then
I suggest that ABORT not be used.
So then the question is: When I ask for a STOP, it takes
forever. How do I get the session to stop fast?
well, first things first. STOP is a REQUEST to stop. It
fires a request (equivalent to a control-c in SQL*PLUS) to
the source database, waits for the source database to clean
up. The bigger the data in the source query, the more time
it takes to "roll-back" the source query, to maintain
transaction consistency in the source database. (ie: join
of huge tables, big group by, big order by).
It then cleans up the buffers in memory by releasing the
data (without writing to the target) but it WILL run the
data all the way through to the target buffers, never
sending it to the target DB. The bigger the session memory
allocations, the longer it takes to clean up
.
Then it fires a request to stop against the target DB, and
waits for the target to roll-back. The higher the commit
point, the more data the target DB has to "roll-back".
FINALLY, it shuts the session down.
WHAT IF I NEED THE SESSION STOPPED NOW?
Pick up the phone and call the source system DBA, have them
KILL the source query IN THE DATABASE. This will send an
EOF (end of file) downstream to Informatica, and Infa will
take less time to stop the session.
If you use abort, be aware, you are choosing to "LOSE"
memory on the server in which Informatica is running
(except AIX).
If you use ABORT and you then re-start the session, chances
are, not only have you lost memory - but now you have TWO
competing queries on the source system after the same data,
and you've locked out any hope of performance in the source
database. You're competing for resources with a defunct
query that's STILL rolling back.
| Is This Answer Correct ? | 14 Yes | 0 No |
Answer / bsgsr
stop command immediately kills the reading process and
doesnt have any timeout period.
abort command gives a time out period of 60secs to the
informatica server to finish the dtm process else it kills
the dtm process.
reach me on bsgsr12@gmail.com
| Is This Answer Correct ? | 15 Yes | 2 No |
What could be the possible resons of locks by user?
One of the optimizing technique to improve the session performance is push down optimization,by using push down optimization we push as much as transformation logic to source/target database,but this degrades the d/b performance,how to overcome this?
Explain sql transformation in script mode examples in informatica
tell me about your project functionality
In Flat file, I need Header, Footer and No of rows in Last column. How will u achieve in Mapping Level(With out using Session Level Property)?
How Union Transformation is an Active Trans?
Is stop and abort are same in informatica?
Kimball and Inmon methodologies?
how u know when to use a static cache and dynamic cache in lookup transformation.
Whats there in global repository
how to delete duplicate records by using filter transfermation?
What is workflow? What are the components of the workflow manager?