(sending to user@ and bbcing dev@ since this is a user question) That type of problem can be "fun" to debug, did you try with the shell to query the data? Do you get a different result?
BTW, any TTL set on that table? J-D On Mon, Aug 29, 2011 at 5:09 PM, Neerja Bhatnagar <[email protected]> wrote: > Hi, > > I am sorry if this question has been resolved before. Thank you for your > help. > > I am seeing really strange behavior with HBase Scan. > > I insert 1 row into a table named test, 1 col family named testColFam, and 3 > columns : foo (with value foo), bar (with value bar), and id (a unique id). > > I wait 5 minutes, and run the following code to retrieve the row --- > > HTablePool htablePool = new HTablePool(config, maxsize); > > HTable table = (HTable) htablePool.getTable("test"); // test is the > tablename > > Scan scan = new Scan(); > scan.addFamily(Bytes.toBytes("testColFam")); > scan.setStartRow(Bytes.toBytes("")); // scan from the first row > scan.setBatch(batchSize); > > ResultScanner resScanner = table.getScanner(scan); > Iterator<Result> resultIterator = resultScanner.iterator(); > > Result result = resultIterator.next(); > > result.getMap(); > > the result.getMap() behaves differently based on time-elapsed. If I run this > code as soon as I have inserted the data, the 3 columns in the 1 row are > returned as expected. > > But after some time elapses, scan returns fewer columns per row each time. > > Can anyone please help me with this? Please let me know if you need more > information. > > Do I need to set the timerange or something to make sure that all columns > are returned? > > Cheers, Neerja >
