- Support for Django 1.11.
- Bugfix so that the
fields.py
file is importable when psycog2 isn't installed. - Add the ability to set the database name in the settings helper, and override the one in the url. Makes generating these settings programatically a bit easier.
- Added decorator for shard storage.
- Renamed
PostgresShardGeneratedIDField
toPostgresShardGeneratedIDAutoField
. - Added non-autoid
PostgresShardGeneratedIDField
that makes a separate call to the database prior to saving. Good for statement based replication. Now you can have more than one of these fields on a model. - Fix
TableShardedIDField
to take a table name rather than model class so that it doesn't give errors when reading the migrations file after deleting the table. - Fix
showmigrations
to use the same database param asmigrate
and act on all by default.
- Django 1.10 compatibility.
- Added postgres specific ID generator
- Some magic sharded field lookups (if you're so inclined)
- The above fields have the additional functionality to automatically lookup the shard when part of the save/update/filter clauses contain the information required to get the shard
- Alters the way data migrations run as far as which databases are acted upon as well as provides an override, see the docs for more details. This brings the package more inline with Django.
- Tested on pthon 2.7, 3.4 and 3.5
- The shards field is using sorted choices so that the migration is the same regardless of the machine.
DJANGO_FRAGMENTS_SHARD_SETTINGS
toDJANGO_SHARDING_SETTINGS
.
- Allow you to rename the app the config is loaded in through a hiddden setting
- Updated the router to accept the
model
hint in addition to already accepting themodel_name
hint.
- Stop selecting incorrect shard group.
- Added additional tests and updated docs
- Added initial functionality to support sharded models, read replicas, tables on non-default databases, docs etc...