nifi-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Deon Huang (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (NIFI-4395) GnerateTableFetch can't fetch column type by state through instance reboot
Date Tue, 19 Sep 2017 13:54:00 GMT

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

Deon Huang updated NIFI-4395:
-----------------------------
    Description: 
The problem can easily be reproduce.
Once GenerateTableFetch store state and encounter NiFi instance reboot.
(Dynamic naming table by expression language)
The exception will occur.

The error in source code is list below.

    if (type == null) {
    // This shouldn't happen as we are populating columnTypeMap when the processor is scheduled
or when the first maximum is observed
    throw new IllegalArgumentException("No column type found for: " + colName);
    }


When this situation happened. The FlowFile will also be grab and can't release or observed.
Processor can't existing grab column type from columnTypeMap through instance reboot.
Hence will inevidible get this exception, rollback FlowFile and never success.

QueryDatabaseTable processor will not encounter this exception due to it setup(context) every
time,
While GenerateTableFetch will not pass the condition and thus try to fetch column type from
0 length columnTypeMap.

    if (!isDynamicTableName && !isDynamicMaxValues) {
    super.setup(context);
    }

I can take the issue if it is recognize as bug.

  was:
The problem can easily be reproduce.
Once GenerateTableFetch store state and encounter NiFi instance reboot.
(Dynamic naming table by expression language)
The exception will occur.

The error in source code is list below.
```
if (type == null) {
    // This shouldn't happen as we are populating columnTypeMap when the processor is scheduled
or when the first maximum is observed
    throw new IllegalArgumentException("No column type found for: " + colName);
  }
```

When this situation happened. The FlowFile will also be grab and can't release or observed.
Processor can't existing grab column type from columnTypeMap through instance reboot.
Hence will inevidible get this exception, rollback FlowFile and never success.

QueryDatabaseTable processor will not encounter this exception due to it setup(context) every
time,
While GenerateTableFetch will not pass the condition and thus try to fetch column type from
0 length columnTypeMap.

```
if (!isDynamicTableName && !isDynamicMaxValues) {
  super.setup(context);
  }
```

I can take the issue if it is recognize as bug.The problem can easily be reproduce.
Once GenerateTableFetch store state and encounter NiFi instance reboot.
(Dynamic naming table by expression language)
The exception will occur.

The error in source code is list below.
```
if (type == null) {
    // This shouldn't happen as we are populating columnTypeMap when the processor is scheduled
or when the first maximum is observed
    throw new IllegalArgumentException("No column type found for: " + colName);
  }
```

When this situation happened. The FlowFile will also be grab and can't release or observed.
Processor can't existing grab column type from columnTypeMap through instance reboot.
Hence will inevidible get this exception, rollback FlowFile and never success.

QueryDatabaseTable processor will not encounter this exception due to it setup(context) every
time,
While GenerateTableFetch will not pass the condition and thus try to fetch column type from
0 length columnTypeMap.

```
if (!isDynamicTableName && !isDynamicMaxValues) {
  super.setup(context);
  }
```

I can take the issue if it is recognize as bug.


> GnerateTableFetch can't fetch column type by state through instance reboot
> --------------------------------------------------------------------------
>
>                 Key: NIFI-4395
>                 URL: https://issues.apache.org/jira/browse/NIFI-4395
>             Project: Apache NiFi
>          Issue Type: Bug
>    Affects Versions: 1.3.0
>            Reporter: Deon Huang
>             Fix For: 1.4.0
>
>         Attachments: GenerateTableFetch_Exception.png
>
>
> The problem can easily be reproduce.
> Once GenerateTableFetch store state and encounter NiFi instance reboot.
> (Dynamic naming table by expression language)
> The exception will occur.
> The error in source code is list below.
>     if (type == null) {
>     // This shouldn't happen as we are populating columnTypeMap when the processor is
scheduled or when the first maximum is observed
>     throw new IllegalArgumentException("No column type found for: " + colName);
>     }
> When this situation happened. The FlowFile will also be grab and can't release or observed.
> Processor can't existing grab column type from columnTypeMap through instance reboot.
> Hence will inevidible get this exception, rollback FlowFile and never success.
> QueryDatabaseTable processor will not encounter this exception due to it setup(context)
every time,
> While GenerateTableFetch will not pass the condition and thus try to fetch column type
from 0 length columnTypeMap.
>     if (!isDynamicTableName && !isDynamicMaxValues) {
>     super.setup(context);
>     }
> I can take the issue if it is recognize as bug.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message