Interface DataflowPipelineDebugOptions

All Superinterfaces:
ExperimentalOptions, HasDisplayData, MemoryMonitorOptions, PipelineOptions
All Known Subinterfaces:
DataflowPipelineOptions, DataflowWorkerHarnessOptions, TestDataflowPipelineOptions

@Hidden public interface DataflowPipelineDebugOptions extends ExperimentalOptions, MemoryMonitorOptions, PipelineOptions
Internal. Options used to control execution of the Dataflow SDK for debugging and testing purposes.
  • Method Details

    • getApiRootUrl

      @String("https://dataflow.googleapis.com/") String getApiRootUrl()
      The root URL for the Dataflow API. dataflowEndpoint can override this value if it contains an absolute URL, otherwise apiRootUrl will be combined with dataflowEndpoint to generate the full URL to communicate with the Dataflow API.
    • setApiRootUrl

      void setApiRootUrl(String value)
    • getDataflowEndpoint

      @String("") String getDataflowEndpoint()
      Dataflow endpoint to use.

      Defaults to the current version of the Google Cloud Dataflow API, at the time the current SDK version was released.

      If the string contains "://", then this is treated as a URL, otherwise getApiRootUrl() is used as the root URL.

    • setDataflowEndpoint

      void setDataflowEndpoint(String value)
    • getDataflowJobFile

      String getDataflowJobFile()
      The path to write the translated Dataflow job specification out to at job submission time. The Dataflow job specification will be represented in JSON format.
    • setDataflowJobFile

      void setDataflowJobFile(String value)
    • getStagerClass

      @Class(GcsStager.class) Class<? extends Stager> getStagerClass()
      The class responsible for staging resources to be accessible by workers during job execution. If stager has not been set explicitly, an instance of this class will be created and used as the resource stager.
    • setStagerClass

      void setStagerClass(Class<? extends Stager> stagerClass)
    • getStager

      The resource stager instance that should be used to stage resources. If no stager has been set explicitly, the default is to use the instance factory that constructs a resource stager based upon the currently set stagerClass.
    • setStager

      void setStager(Stager stager)
    • getDataflowClient

      An instance of the Dataflow client. Defaults to creating a Dataflow client using the current set of options.
    • setDataflowClient

      void setDataflowClient(Dataflow value)
    • getTransformNameMapping

      Map<String,String> getTransformNameMapping()
      Mapping of old PTransform names to new ones, specified as JSON {"oldName":"newName",...} . To mark a transform as deleted, make newName the empty string.
    • setTransformNameMapping

      void setTransformNameMapping(Map<String,String> value)
    • getNumberOfWorkerHarnessThreads

      int getNumberOfWorkerHarnessThreads()
      Number of threads to use on the Dataflow worker harness. If left unspecified, the Dataflow service will compute an appropriate number of threads to use.
    • setNumberOfWorkerHarnessThreads

      void setNumberOfWorkerHarnessThreads(int value)
    • getDumpHeapOnOOM

      boolean getDumpHeapOnOOM()
      If true, save a heap dump before killing a thread or process which is GC thrashing or out of memory. The location of the heap file will either be echoed back to the user, or the user will be given the opportunity to download the heap file.

      CAUTION: Heap dumps can of comparable size to the default boot disk. Consider increasing the boot disk size before setting this flag to true.

    • setDumpHeapOnOOM

      void setDumpHeapOnOOM(boolean dumpHeapBeforeExit)
    • getRecordJfrOnGcThrashing

      boolean getRecordJfrOnGcThrashing()
      If true, save a JFR profile when GC thrashing is first detected. The profile will run for the amount of time set by --jfrRecordingDurationSec, or 60 seconds by default.

      Note, JFR profiles are only supported on java 9 and up.

    • setRecordJfrOnGcThrashing

      void setRecordJfrOnGcThrashing(boolean value)
    • getJfrRecordingDurationSec

      @Integer(60) int getJfrRecordingDurationSec()
    • setJfrRecordingDurationSec

      void setJfrRecordingDurationSec(int value)
    • getWorkerCacheMb

      @Integer(100) Integer getWorkerCacheMb()
      The size of the worker's in-memory cache, in megabytes.

      Currently, this cache is used for storing read values of side inputs in batch as well as the user state for streaming jobs.

    • setWorkerCacheMb

      void setWorkerCacheMb(Integer value)
    • getReaderCacheTimeoutSec

      @Integer(60) Integer getReaderCacheTimeoutSec()
      The amount of time before UnboundedReaders are considered idle and closed during streaming execution.
    • setReaderCacheTimeoutSec

      void setReaderCacheTimeoutSec(Integer value)
    • getUnboundedReaderMaxReadTimeSec

      @Deprecated @Integer(10) Integer getUnboundedReaderMaxReadTimeSec()
      Deprecated.
      The max amount of time an UnboundedReader is consumed before checkpointing.
    • setUnboundedReaderMaxReadTimeSec

      void setUnboundedReaderMaxReadTimeSec(Integer value)
    • getUnboundedReaderMaxReadTimeMs

      The max amount of time an UnboundedReader is consumed before checkpointing.
    • setUnboundedReaderMaxReadTimeMs

      void setUnboundedReaderMaxReadTimeMs(Integer value)
    • getUnboundedReaderMaxElements

      @Integer(10000) Integer getUnboundedReaderMaxElements()
      The max elements read from an UnboundedReader before checkpointing.
    • setUnboundedReaderMaxElements

      void setUnboundedReaderMaxElements(Integer value)
    • getUnboundedReaderMaxWaitForElementsMs

      @Integer(1000) Integer getUnboundedReaderMaxWaitForElementsMs()
      The max amount of time waiting for elements when reading from UnboundedReader.
    • setUnboundedReaderMaxWaitForElementsMs

      void setUnboundedReaderMaxWaitForElementsMs(Integer value)
    • getDesiredNumUnboundedSourceSplits

      @Integer(0) int getDesiredNumUnboundedSourceSplits()
      The desired number of initial splits for UnboundedSources. If this value is invalid input: '<'=0, the splits will be computed based on the number of user workers.
    • setDesiredNumUnboundedSourceSplits

      void setDesiredNumUnboundedSourceSplits(int value)
    • getSaveHeapDumpsToGcsPath

      String getSaveHeapDumpsToGcsPath()
      CAUTION: This option implies dumpHeapOnOOM, and has similar caveats. Specifically, heap dumps can of comparable size to the default boot disk. Consider increasing the boot disk size before setting this flag to true.
    • setSaveHeapDumpsToGcsPath

      void setSaveHeapDumpsToGcsPath(String gcsPath)
    • getSdkHarnessContainerImageOverrides

      String getSdkHarnessContainerImageOverrides()
      Overrides for SDK harness container images.
    • setSdkHarnessContainerImageOverrides

      void setSdkHarnessContainerImageOverrides(String value)