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

Veena Basavaraj updated SQOOP-2039:
-----------------------------------
    Description: 
as the description says KiteLoader needs to handle the date time/ decimal cases 

{code}

    DataReader reader = context.getDataReader();
    Object[] array;
    boolean success = false;

    try {
      while ((array = reader.readArrayRecord()) != null) {
        executor.writeRecord(array);
        rowsWritten++;
      }
      LOG.info(rowsWritten + " data record(s) have been written into dataset.");
      success = true;
    } finally {
      executor.closeWriter();

{code}

  was:
At this point, we do not see the Kite Connector sending BigDecimal for objects 
that are Sqoop Decimal type, as we prescribe JODA for date objects, we need 
BigDecimal for decimal objects.

code to be fixed
{code}

  @Override
  public void extract(ExtractorContext context, LinkConfiguration linkConfig,
      FromJobConfiguration fromJobConfig, KiteDatasetPartition partition) {
    String uri = partition.getUri();
    LOG.info("Loading data from " + uri);

    KiteDatasetExecutor executor = getExecutor(uri);
    DataWriter writer = context.getDataWriter();
    Object[] array;
    rowsRead = 0L;

    try {
      while ((array = executor.readRecord()) != null) {
        // TODO: SQOOP-1616 will cover more column data types. Use schema and 
do data type conversion (e.g. datatime).
        writer.writeArrayRecord(array);
        rowsRead++;
      }
    } finally {
      executor.closeReader();
    }
  }

{code}



> Sqoop2: KiteConnector To side need to convert  JODA to Avro Date,  BigDecimal 
> to Avro Decimal type
> --------------------------------------------------------------------------------------------------
>
>                 Key: SQOOP-2039
>                 URL: https://issues.apache.org/jira/browse/SQOOP-2039
>             Project: Sqoop
>          Issue Type: Bug
>            Reporter: Veena Basavaraj
>            Assignee: Qian Xu
>             Fix For: 1.99.6
>
>
> as the description says KiteLoader needs to handle the date time/ decimal 
> cases 
> {code}
>     DataReader reader = context.getDataReader();
>     Object[] array;
>     boolean success = false;
>     try {
>       while ((array = reader.readArrayRecord()) != null) {
>         executor.writeRecord(array);
>         rowsWritten++;
>       }
>       LOG.info(rowsWritten + " data record(s) have been written into 
> dataset.");
>       success = true;
>     } finally {
>       executor.closeWriter();
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to