mrjob.inline - alternate (debugger-friendly) local testing

class mrjob.inline.InlineMRJobRunner(mrjob_cls=None, **kwargs)

Runs an MRJob without invoking the job as a subprocess, so it’s easy to attach a debugger.

This is the default way of testing jobs; We assume you’ll spend some time debugging your job before you’re ready to run it on EMR or Hadoop.

To more accurately simulate your environment prior to running on Hadoop/EMR, use -r local.

InlineMRJobRunner.__init__(mrjob_cls=None, **kwargs)

InlineMRJobRunner takes the same keyword args as MRJobRunner. However, please note:

  • hadoop_extra_args, hadoop_input_format, hadoop_output_format, and hadoop_streaming_jar, jobconf, and partitioner are ignored because they require Java. If you need to test these, consider starting up a standalone Hadoop instance and running your job with -r hadoop.
  • cmdenv, python_bin, setup_cmds, setup_scripts, steps_python_bin, upload_archives, and upload_files are ignored because we don’t invoke the job as a subprocess or run it in its own directory.

Previous topic

mrjob.hadoop - run on your Hadoop cluster

Next topic

mrjob.job

This Page