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

Otavio Rodolfo Piske updated CAMEL-21012:
-----------------------------------------
    Description: 
The embedding component and the Milvus component in Camel have different 
behaviors when it comes to handling actions

The embedding component requires the action name to be specified as a header: 

```
<setHeader name="CamelMilvusAction">
            <constant>UPSERT</constant>
        </setHeader>
```

However, this causes problems when using in combination with the Milvus 
embedding, because the transformer creates a InsertParam object. 

The problem is in the `private void upsert(Exchange exchange)` method from 
MilvusProducer.java. When we try to get the body of the message, we look for an 
`UpsertParam.class`. 

  was:
The embedding component and the Milvus component in Camel have different 
behaviors when it comes to handling collection names.

The embedding component requires the collection name to be specified as a 
header, while the Milvus component allows for a different collection name to be 
used.

For instance:

{code:java}
<setHeader name="CamelMilvusCollectionName">
       <constant>MyTestCollectionName2</constant>
</setHeader>

<transform toType="milvus:embeddings"/>

<to uri="milvus:MyCompletelyDifferentCollectionNameABBBC..."/>

{code}

This inconsistency can lead to confusion and errors when trying to use both 
components together. It would be beneficial to standardize the behavior of 
these components so that they can work seamlessly with each other. 


> camel-milvus: action name mismatch with embeddings
> --------------------------------------------------
>
>                 Key: CAMEL-21012
>                 URL: https://issues.apache.org/jira/browse/CAMEL-21012
>             Project: Camel
>          Issue Type: Task
>          Components: camel-milvus
>    Affects Versions: 4.7.0
>            Reporter: Otavio Rodolfo Piske
>            Assignee: Andrea Cosentino
>            Priority: Major
>             Fix For: 4.8.0
>
>
> The embedding component and the Milvus component in Camel have different 
> behaviors when it comes to handling actions
> The embedding component requires the action name to be specified as a header: 
> ```
> <setHeader name="CamelMilvusAction">
>             <constant>UPSERT</constant>
>         </setHeader>
> ```
> However, this causes problems when using in combination with the Milvus 
> embedding, because the transformer creates a InsertParam object. 
> The problem is in the `private void upsert(Exchange exchange)` method from 
> MilvusProducer.java. When we try to get the body of the message, we look for 
> an `UpsertParam.class`. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to