class_docstr: The execution mode specifies how a batch program is executed in terms
  of data exchange: pipelining or batched.
  
  :data:`PIPELINED`:
  
  Executes the program in a pipelined fashion (including shuffles and broadcasts),
  except for data exchanges that are susceptible to deadlocks when pipelining.
  These data exchanges are performed in a batch manner.
  
  An example of situations that are susceptible to deadlocks (when executed in a
  pipelined manner) are data flows that branch (one data set consumed by multiple
  operations) and re-join later.
  
  
  :data:`PIPELINED_FORCED`:
  
  Executes the program in a pipelined fashion (including shuffles and broadcasts),
  **including** data exchanges that are susceptible to deadlocks when
  executed via pipelining.
  
  Usually, PIPELINED is the preferable option, which pipelines most
  data exchanges and only uses batch data exchanges in situations that are
  susceptible to deadlocks.
  
  This option should only be used with care and only in situations where the
  programmer is sure that the program is safe for full pipelining and that
  Flink was too conservative when choosing the batch exchange at a certain
  point.
  
  :data:`BATCH`:
  
  This mode executes all shuffles and broadcasts in a batch fashion, while
  pipelining data between operations that exchange data only locally
  between one producer and one consumer.
  
  :data:`BATCH_FORCED`:
  
  This mode executes the program in a strict batch way, including all points
  where data is forwarded locally from one producer to one consumer. This mode
  is typically more expensive to execute than the BATCH mode. It does
  guarantee that no successive operations are ever executed concurrently.
class_docstr_tok: ["The","execution","mode","specifies","how","a","batch","program","is","executed","in","terms","of","data","exchange",":","pipelining","or","batched",".",":","data",":","`","PIPELINED","`",":","Executes","the","program","in","a","pipelined","fashion","(","including","shuffles","and","broadcasts",")",",","except","for","data","exchanges","that","are","susceptible","to","deadlocks","when","pipelining",".","These","data","exchanges","are","performed","in","a","batch","manner",".","An","example","of","situations","that","are","susceptible","to","deadlocks","(","when","executed","in","a","pipelined","manner",")","are","data","flows","that","branch","(","one","data","set","consumed","by","multiple","operations",")","and","re-join","later",".",":","data",":","`","PIPELINED_FORCED","`",":","Executes","the","program","in","a","pipelined","fashion","(","including","shuffles","and","broadcasts",")",",","*","*","including","*","*","data","exchanges","that","are","susceptible","to","deadlocks","when","executed","via","pipelining",".","Usually",",","PIPELINED","is","the","preferable","option",",","which","pipelines","most","data","exchanges","and","only","uses","batch","data","exchanges","in","situations","that","are","susceptible","to","deadlocks",".","This","option","should","only","be","used","with","care","and","only","in","situations","where","the","programmer","is","sure","that","the","program","is","safe","for","full","pipelining","and","that","Flink","was","too","conservative","when","choosing","the","batch","exchange","at","a","certain","point",".",":","data",":","`","BATCH","`",":","This","mode","executes","all","shuffles","and","broadcasts","in","a","batch","fashion",",","while","pipelining","data","between","operations","that","exchange","data","only","locally","between","one","producer","and","one","consumer",".",":","data",":","`","BATCH_FORCED","`",":","This","mode","executes","the","program","in","a","strict","batch","way",",","including","all","points","where","data","is","forwarded","locally","from","one","producer","to","one","consumer",".","This","mode","is","typically","more","expensive","to","execute","than","the","BATCH","mode",".","It","does","guarantee","that","no","successive","operations","are","ever","executed","concurrently","."]
code: def _from_j_execution_mode(j_execution_mode) -> "ExecutionMode":
      return ExecutionMode[j_execution_mode.name()]
  
imports: from enum import Enum
  from pyflink.java_gateway import get_gateway
label_desc: Use image node_id 1 for calling the ExecutionMode obj's underlying member method code with example usage: obj._from_j_execution_mode(j_execution_mode) and returns: ExecutionMode