> On Feb. 3, 2016, 7:39 p.m., John Sirois wrote: > > This looks about right to me. > > > > In the general case though for thrift field moves (I was thinking about > > this problem last night), it seems to me there would need to be a > > bi-directional fill in-place when the new field locations were introduced > > to both copy the old field location value (when non-null) to the new > > location for old releases and vice-versa (the case you have covered here) > > to allow for rollback from a release that removes the old field locations. > > > > IIUC the forward-fill missing here occurred long-ago though, so we're ok. > > > > If that makes sense is that about right?
... and furthermore, the bi-drectional fill pattern is needed in-general to cope with the fact that thrift objects are values equals, so any field move requires bi-directional fill to be safe for sets and maps and the like. - John ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/43172/#review117750 ----------------------------------------------------------- On Feb. 3, 2016, 7:14 p.m., Maxim Khutornenko wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/43172/ > ----------------------------------------------------------- > > (Updated Feb. 3, 2016, 7:14 p.m.) > > > Review request for Aurora, John Sirois and Bill Farner. > > > Bugs: AURORA-1603 > https://issues.apache.org/jira/browse/AURORA-1603 > > > Repository: aurora > > > Description > ------- > > This change ensures we can un-revert https://reviews.apache.org/r/43104/ when > 0.12.0 ships and still have a graceful rollback from 0.13.0 to 0.12.0. > > > Diffs > ----- > > src/main/java/org/apache/aurora/scheduler/storage/db/TaskConfigManager.java > 27f1f33ffc782b3d2a2a9add494c04911659e217 > src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java > 042f71dd8bc81d03f2759ee7f7f4b65a098d11e2 > > src/main/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImpl.java > db90150b48c5b134dde6c69f70ebca82bfdd0c12 > src/main/java/org/apache/aurora/scheduler/storage/log/ThriftBackfill.java > PRE-CREATION > > src/test/java/org/apache/aurora/scheduler/storage/db/DbJobUpdateStoreTest.java > 54defc256ad8a261c6b56ee06ad7fdd16a26b057 > src/test/java/org/apache/aurora/scheduler/storage/log/LogStorageTest.java > 7382eca281eeab17d407ed140f16d6a633d8ad72 > > src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java > 806f50d57e44261e3a1988a3c9bb742442badde8 > > src/test/java/org/apache/aurora/scheduler/storage/log/ThriftBackfillTest.java > PRE-CREATION > > Diff: https://reviews.apache.org/r/43172/diff/ > > > Testing > ------- > > ./gradlew -Pq build > > > Thanks, > > Maxim Khutornenko > >
