mneedham opened a new issue, #10833:
URL: https://github.com/apache/pinot/issues/10833

   When using the upsert functionality, it is possible to change the table 
config from full upsert to partial upsert. But when you make this change, the 
partial upsert config isn't picked up until you restart the server.
   
   I think this is deliberate as we only create a new TableDataManager if one 
isn't already designed, otherwise, it uses one that was created for the [first 
segment 
added/replaced](https://github.com/apache/pinot/blob/master/pinot-server/src/main/java/org/apache/pinot/server/starter/helix/HelixInstanceDataManager.java#L482)
 on that server.  
   
   To me, this behaviour doesn't seem intuitive. I would expect one of the 
following to apply:
   
   1. We aren't allowed to change the upsert functionality in this way and 
table validation should reject our attempts to do so.
   2. We should create a new TableDataManager when a new segment is being 
added/replaced if we detect a change has been made to the table config.
   
   But which of these should it be, or is there another option?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to