The pipeline defined in the bulk update item here is ignored:

```
POST /_bulk
{"update":{"_id":"1","_index":"pipeline-test","pipeline":"lowercase-pipeline"}}
{"upsert":{"myField":"UPPER"},"script":{"source":"ctx._source.myField = 'CHANGED'","lang":"painless"}}
```

Only if the pipeline is defined as query string argument, then the pipeline is picked up and used to process the upset:

```
POST /_bulk?pipeline=lowercase-pipeline
{"update":{"_id":"1","_index":"pipeline-test"}}
{"upsert":{"myField":"UPPER"},"script":{"source":"ctx._source.myField = 'CHANGED'","lang":"painless"}}
```

The Bulk API should also use the pipeline defined in the bulk update item.
server/src/main/java/org/elasticsearch/action/bulk/BulkRequestParser.java
token = parser.nextToken();
                if (token != XContentParser.Token.FIELD_NAME) {
                    throw new IllegalArgumentException(
                        "Malformed action/metadata line ["
                            + line
                            + "], expected "
                            + XContentParser.Token.FIELD_NAME
                            + " but found ["
                            + token
                            + "]"
                    );
                }
                String action = parser.currentName();
                if (SUPPORTED_ACTIONS.contains(action) == false) {
                    deprecationLogger.compatibleCritical(
                        STRICT_ACTION_PARSING_WARNING_KEY,
                        "Unsupported action: [{}]. Supported values are [create], [delete], [index], and [update]. "
                            + "Unsupported actions are currently accepted but will be rejected in a future version.",
                        action
                    );
                }
                String index = defaultIndex;
                String type = null;
                String id = null;
                String routing = defaultRouting;
                FetchSourceContext fetchSourceContext = defaultFetchSourceContext;
                String opType = null;
                long version = Versions.MATCH_ANY;
                VersionType versionType = VersionType.INTERNAL;