I modified TestMultiVersions#testGetRowVersions in master branch: http://pastebin.com/0YQcWUxB
Mike: See if the above test mimics your usage. I added one more column family which receives more writes than the MaxVersions. Please let us know the release of hbase you use and whether the test passes for you. If you have your own test case which fails, please share with us. Cheers On Sun, Dec 13, 2015 at 9:12 PM, Anoop John <anoop.hb...@gmail.com> wrote: > You still should not have missed some columns (cf:qual).. At least the > most recent version would have been there.. Some thing is wrong.. Can u > tell us more abt the version you are using and may be small test code to > reproduce this behavior? > > -Anoop- > > On Mon, Dec 14, 2015 at 5:59 AM, Mike Thomsen <mikerthom...@gmail.com> > wrote: > > > The behavior I think I observed was one column family hitting its max > > version and the entire row, all column families, being wiped. Is that > > expected? > > > > On Sun, Dec 13, 2015 at 6:30 PM, Ted Yu <yuzhih...@gmail.com> wrote: > > > > > The Maximum Number of Versions for a Column Family applies to the row. > > > In your case, subsequent writes cause the max versions to be reached, > > > leading to the behavior you observed. > > > > > > See also http://hbase.apache.org/book.html#specify.number.of.versions > > > > > > Cheers > > > > > > > > > On Sun, Dec 13, 2015 at 2:39 PM, Mike Thomsen <mikerthom...@gmail.com> > > > wrote: > > > > > > > I think our TTL is whatever is or functionally is "forever." We have > a > > > max > > > > of 3 versions on those column families. When I do that put several > > times > > > > (it's in a Storm topology, so it might get sent a dozen times if > > another > > > > bolt fails), will that overwrite just the affected cells or affect > > > > everything in the column family or even the entire row? > > > > > > > > Thanks, > > > > > > > > Mike > > > > > > > > On Sun, Dec 13, 2015 at 5:14 PM, Ted Yu <yuzhih...@gmail.com> wrote: > > > > > > > > > The put for q4, q5, q6 and q7 wouldn't overwrite existing rows. > > > > > > > > > > When were the columns q1 to q3 written ? > > > > > What is the TTL for your table ? > > > > > > > > > > Thanks > > > > > > > > > > On Sun, Dec 13, 2015 at 12:36 PM, Mike Thomsen < > > mikerthom...@gmail.com > > > > > > > > > wrote: > > > > > > > > > > > I noticed that our test data set is suddenly missing a lot of > data, > > > > and I > > > > > > am wondering if it's because I'm misunderstanding how HBase > handles > > > > puts. > > > > > > > > > > > > Suppose we have 3 families: ca, cb and cc. > > > > > > > > > > > > Before on row abcde-fgh-ijkl > > > > > > > > > > > > ca:q1=.... > > > > > > ca:q2=.... > > > > > > ca:q3=.... > > > > > > cb:q1=.... > > > > > > cb:q2=.... > > > > > > cc:q1=.... > > > > > > > > > > > > We send a put that adds q4, q5, q6 and q7. > > > > > > > > > > > > Now the row looks like this: > > > > > > ca:q4=.... > > > > > > ca:q5=.... > > > > > > ca:q6=.... > > > > > > ca:q7=.... > > > > > > > > > > > > I thought a PUT would just add data. It looks like it's > overwriting > > > the > > > > > > entire row. > > > > > > > > > > > > > > > > > > > > >