> On Oct. 22, 2012, 2:11 p.m., Ivan Kelly wrote: > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/Value.java, > > line 37 > > <https://reviews.apache.org/r/7314/diff/1/?file=160309#file160309line37> > > > > value should only be a byte[]. adding fields like this does, > > overexpands the scope of the change without a strong need. > > Jiannan Wang wrote: > Currently, SubscriptionData contains preference and state information, > where state is updated frequently while preference changes only when sub. To > make better performance, SubscriptionDataManager supports partial update > operation. This is the reason why we introduce fields in Value to support > updating a specific field. > > Ivan Kelly wrote: > This is a lot of complexity to add for a single corner case. A simpler > solution would be to split SubscriptionData before writing to the metadata > interface and to write to 2 separate keys, subid-prefs and subid-state for > example. > > > Sijie Guo wrote: > Added my comments of fields: > > 1) As Jiannan described, separated infrequent and frequent data in > different fields is one of the considerations. > 2) In table system metadata storage, a field is required when adding > record to a table. > > Jiannan Wang wrote: > Yeah, split preference and state informations into two separate keys > makes the API more simple. However, 1) it doubles the records. 2) separate > into 2 keys means two different versions, and we may need more logic if we > want to update both of them at the same time.
1) isnt really a problem for 2), some stores will have multiple versions anyhow if you put them in separate columns (hbase for example). Do subscription prefs ever change after the subscription has been created? - Ivan ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/7314/#review12653 ----------------------------------------------------------- On Nov. 1, 2012, 4:27 p.m., Jiannan Wang wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/7314/ > ----------------------------------------------------------- > > (Updated Nov. 1, 2012, 4:27 p.m.) > > > Review request for bookkeeper. > > > Description > ------- > > We need a MetaStore interface which easy for us to plugin different scalable > k/v storage, such as HBase. > > > This addresses bug BOOKKEEPER-204. > https://issues.apache.org/jira/browse/BOOKKEEPER-204 > > > Diffs > ----- > > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MSException.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetaStore.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreCallback.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreCursor.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreException.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreFactory.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreScannableTable.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreTable.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/MetastoreTableItem.java > PRE-CREATION > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/Value.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/mock/MockMetaStore.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/mock/MockMetastoreCursor.java > PRE-CREATION > > bookkeeper-server/src/main/java/org/apache/bookkeeper/metastore/mock/MockMetastoreTable.java > PRE-CREATION > > bookkeeper-server/src/test/java/org/apache/bookkeeper/metastore/MetastoreScannableTableAsyncToSyncConverter.java > PRE-CREATION > > bookkeeper-server/src/test/java/org/apache/bookkeeper/metastore/MetastoreTableAsyncToSyncConverter.java > PRE-CREATION > > bookkeeper-server/src/test/java/org/apache/bookkeeper/metastore/TestMetaStore.java > PRE-CREATION > > Diff: https://reviews.apache.org/r/7314/diff/ > > > Testing > ------- > > > Thanks, > > Jiannan Wang > >
