Both ColumnFamilyOutputFormat and BulkOutputFormat. addNamedOutput never seems to set the column family.
I would assume:
MultipleOutputs.addNamedOutput(job, OUTPUT_COLUMN_FAMILY1, ColumnFamilyOutputFormat.class, ByteBuffer.class, List.class);
MultipleOutputs.addNamedOutput(job, OUTPUT_COLUMN_FAMILY2, ColumnFamilyOutputFormat.class, ByteBuffer.class, List.class);
is all that is needed. If i don't setup the job with job.SetOutputFormatClass(ColumnFamilyOutputFormat.class) FileOutputFormat throws an exception
Exception in thread "main" org.apache.hadoop.mapred.InvalidJobConfException: Output directory not set.
If i do specify that at the job level the job name never seems to to set the column family name on that job.
additionally, using the job name as the column family name is slightly inconvenient as we use '_' in our column family names which is not a valid character in MultipleOutputs as it looks like _# is the way they internally keep track of counters if that is enabled.
i would love to see the patch you are proposing to fix the issue for bulkoutputformat