aboutsummaryrefslogtreecommitdiff
path: root/scalastyle-config.xml
diff options
context:
space:
mode:
authorJosh Rosen <joshrosen@databricks.com>2016-03-10 15:08:41 -0800
committerAndrew Or <andrew@databricks.com>2016-03-10 15:08:41 -0800
commit81d48532d954a8aea28d7e1fb3aa32a78c708b63 (patch)
treec53bc6199e1807cabfea0a8dac87cb0c7ebbe6e3 /scalastyle-config.xml
parent3d2b6f56e38ce867ae8819752fd693adab9a8cc9 (diff)
downloadspark-81d48532d954a8aea28d7e1fb3aa32a78c708b63.tar.gz
spark-81d48532d954a8aea28d7e1fb3aa32a78c708b63.tar.bz2
spark-81d48532d954a8aea28d7e1fb3aa32a78c708b63.zip
[SPARK-13696] Remove BlockStore class & simplify interfaces of mem. & disk stores
Today, both the MemoryStore and DiskStore implement a common `BlockStore` API, but I feel that this API is inappropriate because it abstracts away important distinctions between the behavior of these two stores. For instance, the disk store doesn't have a notion of storing deserialized objects, so it's confusing for it to expose object-based APIs like putIterator() and getValues() instead of only exposing binary APIs and pushing the responsibilities of serialization and deserialization to the client. Similarly, the DiskStore put() methods accepted a `StorageLevel` parameter even though the disk store can only store blocks in one form. As part of a larger BlockManager interface cleanup, this patch remove the BlockStore interface and refines the MemoryStore and DiskStore interfaces to reflect more narrow sets of responsibilities for those components. Some of the benefits of this interface cleanup are reflected in simplifications to several unit tests to eliminate now-unnecessary mocking, significant simplification of the BlockManager's `getLocal()` and `doPut()` methods, and a narrower API between the MemoryStore and DiskStore. Author: Josh Rosen <joshrosen@databricks.com> Closes #11534 from JoshRosen/remove-blockstore-interface.
Diffstat (limited to 'scalastyle-config.xml')
0 files changed, 0 insertions, 0 deletions