Table.scan() should have a way to set the client cache size

Description

Currently, this is hardcoded, with the assumption that it is used in map/reduce: (HBaseTable.java)

But in some cases, this needs better fine-tuning. For example, when scanning an indexed table, we scan the index, then perform a get() for each row found in the index. If gets are slow(ish), then 1000 gets can take longer than the server side HBase scanner timeout, and the 1001st call to next() will fail. In this case, we would want a much smaller client cache, say 100 or 200.

The Table API should have a way to set this per scanner instance.

Release Notes

None
Duplicate

Assignee

Bhooshan Mogal

Reporter

Andreas Neumann

Labels

Docs Impact

None

UX Impact

None

Components

Fix versions

Affects versions

Priority

Major
Configure