sqoop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ferenc Szabo (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SQOOP-3241) ImportAllTablesTool uses the same SqoopOptions object for every table import
Date Tue, 02 Jan 2018 15:26:00 GMT

    [ https://issues.apache.org/jira/browse/SQOOP-3241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16308211#comment-16308211

Ferenc Szabo commented on SQOOP-3241:

Implementation details:

As discussed with Szabi, I will modify the patch so:
- object creation won't be included in the tests as it's a Tool class responsibility.
- we will use reflection to create a SqoopOptions and fill it with random values
- we will also use reflection to check whether reference types are equal but not the same
on the cloned SqoopOption as well.

> ImportAllTablesTool uses the same SqoopOptions object for every table import
> ----------------------------------------------------------------------------
>                 Key: SQOOP-3241
>                 URL: https://issues.apache.org/jira/browse/SQOOP-3241
>             Project: Sqoop
>          Issue Type: Bug
>    Affects Versions: 1.4.6
>            Reporter: Szabolcs Vasas
>            Assignee: Ferenc Szabo
>         Attachments: SQOOP-3255.patch
> ImportAllTablesTool queries the list of tables from the database and invokes ImportTool#importTable
method for each table.
> The problem is that it passes the same SqoopOptions object in every invocation and since
SqoopOptions is not immutable this can lead to issues.
> For example in case of Parquet imports the CodeGenTool#generateORM method modifies the
className field of the SqoopOptions object which is then remains the same for all the subsequent
table imports and can cause job failures.
> One solution could be to create a new SqoopOptions object with the same field values
for every ImportTool#importTable invocation.

This message was sent by Atlassian JIRA

View raw message