Details
- 
    
Task
 - 
    Status: Closed (View Workflow)
 - 
    
Major
 - 
    Resolution: Won't Do
 - 
    1.4.3
 - 
    None
 
Description
As of 1.4 MCS uses a legacy complex machine to process pushed down conditions when run queries in table API mode. MCS populates a map that is globally unique for the client connection with TABLE* - CSEP mappings to use them later in rnd_init().
This is error prone and overcomplicated ways of doing this.
A pair handler::cond_push()/cond_pop() push conditions for a dedicated handler instance. The same instance executes rnd_init() so it is safe to create a stack of ParseTree pointers in handler. MCS must clean them up on handler::reset() thus the mapping clean up must be removed from handler::external_lock().
Attachments
Issue Links
- includes
 - 
                    
MCOL-4023 MCS doesn't apply optimized WHERE conditions doing UPDATE
-         
 - Closed
 
 -