You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jan Lukavsky (JIRA)" <ji...@apache.org> on 2011/08/30 09:44:38 UTC

[jira] [Updated] (HBASE-4297) TableMapReduceUtil overwrites user supplied options

     [ https://issues.apache.org/jira/browse/HBASE-4297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jan Lukavsky updated HBASE-4297:
--------------------------------

    Attachment: HBASE-4297.patch

Attaching patch for this issue.

> TableMapReduceUtil overwrites user supplied options
> ---------------------------------------------------
>
>                 Key: HBASE-4297
>                 URL: https://issues.apache.org/jira/browse/HBASE-4297
>             Project: HBase
>          Issue Type: Bug
>          Components: mapreduce
>    Affects Versions: 0.90.4
>            Reporter: Jan Lukavsky
>         Attachments: HBASE-4297.patch
>
>
> Job configuration is overwritten by hbase-default and hbase-site in TableMapReduceUtil.initTable(Mapper|Reducer)Job, causing unexpected behavior in the following code:
> {noformat}
> Configuration conf = HBaseConfiguration.create();
> // change keyvalue size
> conf.setInt("hbase.client.keyvalue.maxsize", 20971520);
> Job job = new Job(conf, ...);
> TableMapReduceUtil.initTableMapperJob(...);
> // the job doesn't have the option changed, uses it from hbase-site or hbase-default
> job.submit();
> {noformat}
> Although in this case it could be fixed by moving the set() after initTableMapperJob(), in case where user wants to change some option using GenericOptionsParser and -D this is impossible, making this cool feature useless.
> In the 0.20.x era this code behaved as expected. The solution of this problem should be that we don't overwrite the options, but just read them if they are missing.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira