You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ex...@apache.org on 2026/05/18 20:25:19 UTC

(nifi) branch main updated: NIFI-14472 Fixed potential NullPointerException in PutKinesisFirehose (#11211)

This is an automated email from the ASF dual-hosted git repository.

exceptionfactory pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new 4d32a455e69 NIFI-14472 Fixed potential NullPointerException in PutKinesisFirehose (#11211)
4d32a455e69 is described below

commit 4d32a455e694fbca8fc2a3373e144c9d21f4ec7b
Author: Rakesh Kumar Singh <80...@users.noreply.github.com>
AuthorDate: Tue May 19 01:55:12 2026 +0530

    NIFI-14472 Fixed potential NullPointerException in PutKinesisFirehose (#11211)
    
    - Collapsed two-step computeIfAbsent/get into a single chained call in PutKinesisFirehose to eliminate the redundant map lookup.
    
    Signed-off-by: David Handermann <ex...@apache.org>
---
 .../nifi/processors/aws/kinesis/firehose/PutKinesisFirehose.java   | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/kinesis/firehose/PutKinesisFirehose.java b/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/kinesis/firehose/PutKinesisFirehose.java
index 25d6e027c49..fa2fa1396f9 100644
--- a/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/kinesis/firehose/PutKinesisFirehose.java
+++ b/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/kinesis/firehose/PutKinesisFirehose.java
@@ -134,8 +134,11 @@ public class PutKinesisFirehose extends AbstractAwsSyncProcessor<FirehoseClient,
             for (final FlowFile flowFile : flowFiles) {
                 final String firehoseStreamName = context.getProperty(KINESIS_FIREHOSE_DELIVERY_STREAM_NAME).evaluateAttributeExpressions(flowFile).getValue();
 
-                recordHash.computeIfAbsent(firehoseStreamName, k -> new ArrayList<>());
-                session.read(flowFile, in -> recordHash.get(firehoseStreamName).add(Record.builder().data(SdkBytes.fromInputStream(in)).build()));
+                session.read(flowFile, in ->
+                        recordHash
+                                .computeIfAbsent(firehoseStreamName, k -> new ArrayList<>())
+                                .add(Record.builder().data(SdkBytes.fromInputStream(in)).build())
+                );
 
                 final List<FlowFile> flowFilesForStream = hashFlowFiles.computeIfAbsent(firehoseStreamName, k -> new ArrayList<>());
                 flowFilesForStream.add(flowFile);