View Source Changelog

All notable changes to this project will be documented in this file.

This project adheres to Semantic Versioning.

v1.1.1 (2024-05-25)

Full Changelog

Closed issues:

v1.1.0 (2022-11-25)

Full Changelog

Implemented enhancements:

  • Add helper functions for storing and retrieving custom metadata 814ebf1.
  • Overall fixes, updates, and improvements 474ca04.
  • Add rebar3_ex_doc for generating docs 5070f4a.

v1.0.1 (2020-11-07)

Full Changelog

Fixed bugs:

  • Paginated select/match raises badarg when used with large data #59.

Implemented enhancements:

  • Added property tests for base read/write commands.

v1.0.0 (2020-10-28)

Full Changelog

Implemented enhancements:

  • Make shards just a library to work locally and move shards_dist to a separate project/repo #52.
  • Use the metadata ETS table for storing the partitions TIDs, instead of building atoms in runtime for table names #55.
  • Refactor shards to use TIDs instead of names (atoms) for handling the partitions #54.
  • Support named and unnamed tables #53.
  • Create the module shards_group as dynamic supervisor for creating/deleting tables dynamically as part of a supervision tree #56.
  • Add module shards_enum for the enumerable-based functions.
  • Add simple implementation for shards_enum:pmap/2,3 to support parallel execution.
  • Make configurable parallel execution for operations involving all partitions (like query-based functions) via parallel option. See shards:new/2.
  • Make configurable the max timeout for parallel executions via parallel_timeout option. See shards:new/2.
  • Remove module shards_task since it is overkill and not needed anymore.
  • Fix and/or improve docs.

Closed issues:

  • Shards 0.6.2 doesn't compile on OTP 23.0.3 on OS X 10.15 #48.
  • Migrate from pg2 to pg (OTP 23) #47.
  • Support for select_replace #45.
  • Fix shards_dist and shards specs to consider the case when rpc returns {badrpc, Reason} #43.

Merged pull requests:

  • Prepare v1.0.0 #51

v0.6.2 (2020-03-23)

Full Changelog

Closed issues:

  • Rollback when insert_new fails #46

v0.6.1 (2019-11-05)

Full Changelog

Closed issues:

  • Missing support for keypos #44
  • update_counter spec is not the same as ETS. #42
  • Failed to start shard_sup #41

v0.6.0 (2018-09-02)

Full Changelog

Implemented enhancements:

  • Improve documentation #39

v0.5.1 (2018-06-26)

Full Changelog

Closed issues:

  • Issues on Erlang v21 #40
  • Improve test coverage (ideally 100%) #38

v0.5.0 (2017-07-11)

Full Changelog

Implemented enhancements:

  • Improve shards_local:info/1,2 to be compliant with ETS functions #37
  • Improve file2tab and tab2file in shards_local to be compliant with ETS functions #36
  • Improve shards_local fix #4 – ordered_set support. #25

Closed issues:

  • Allows to register shards_sup with custom name (given as parameter) #34
  • file2tab, tab2file not working #33

Merged pull requests:

v0.4.2 (2017-02-22)

Full Changelog

Closed issues:

v0.4.1 (2017-02-13)

Full Changelog

Implemented enhancements:

  • Automatically distributed table setup when shards:new/2 is called with opt {nodes, \[node\(\)\]} #28
  • Implement select/match pagination ops for shards_dist #16

Closed issues:

  • Implement update_counter and update_element in shards_dist #31
  • LRU Feature may be #29

v0.4.0 (2017-02-10)

Full Changelog

Implemented enhancements:

  • Allow to create the state passing the rest of its attributes #30

Closed issues:

  • Add performance and scalability tests #2

v0.3.1 (2016-09-08)

Full Changelog

Implemented enhancements:

  • Modify shards:new/2 function to return only the table name in case of success #27

v0.3.0 (2016-08-02)

Full Changelog

Implemented enhancements:

  • Allow to call shards_local without the state – using a default state. #23
  • Unify pick_shard_fun and pick_node_fun in a single spec #22
  • Separate shards from specific consistent hashing implementation. #21

Closed issues:

  • Remove auto_eject_nodes property from state – it isn't being used #24
  • Fix shards to work well with ordered_set tables. #4

v0.2.0 (2016-07-10)

Full Changelog

Implemented enhancements:

  • Modify shards_local to avoid additional table types, handle a flag sharded instead. #10
  • Make distribution function (pick none/shard) configurable. #9
  • Implement sharding at global level. #3

Closed issues:

  • OTP \< 18 not supported #13
  • rebar2 compatibility #12

Merged pull requests:

v0.1.0 (2016-05-19)

Full Changelog

Closed issues:

  • Operation of the shards:info/2 does not match #8

Merged pull requests:

  • Fix README. #7 (cabol)
  • Refactor shards_local to handle 'state' and avoid to call ETS control table. #6 (cabol)
  • Implemented distributed shards. #5 (cabol)

* This Changelog was automatically generated by github_changelog_generator