Thoughts on synchronization between Selects and Value

Hello fellow vaadin users and developers,

I recently happend to stumble upon the changeset 13980 in trac. That changeset reports that from now on values in ComboBoxes, Tables and Filterselects are being unset when
setContainerDataSource
is called. After having read through trac I found out that this is the fix for some ComboBox related bugs.

From my point of view this is not a good idea or to be more precise I’d say that thought was not thought to an end, as the statement ‘once you set a new datasource, your value is reset’ sounds like a side effect which has potential to cause trouble (as happened in my project btw.)
You could also read that fix as ‘datasource and value should be in sync, so there must be no value which is not in the datasource’. Unfortunately this does not work as well because of two things: Firstly I could have the same value in the new Container - no need to reset it then. Secondly when I remove the value from the Container it will remain being set in the ComboBox.

In my opinion the synchronization between the Contatiner and the widget using it should follow a clear (and simple) policy. The question is, which policy that is. I’d like to hear some opinions on this.

Thanks in advance.
Peer