Hard vs Soft Parsing
- The SQL is loaded into the shared pool
- syntax parse
- semantics parse
- Query Transformation
- Optimization
- Executable created
Exactly which steps comprise the hard and soft parse steps? According to clearest document I could find, step 1 is the hard parse and 2-6 are the soft parse steps. But, if that is true, how can there ever be a soft parse? Is there a step 0 where the shared pool is checked to see if the SQL has already been loaded and all of the necessary environmental variables match so that step 1 can be skipped?