Dgraph v0.8.0 Release
This release would not work on v0.7 data directly. Needs backup and reimport.
Features
Server
- Suppport
hasfunction. - Support for variables in mutation blocks.
- Support for k shortest paths.
- Support deletion of predicate.
- Support for
uid_infunction. - ignoreReflex directive to remove reflexive edges from results.
- Allow to use Dgraph as a library.
- Ability to monitor server metrics.
Client
- Go client now supports an
Unmarshalfunction which allows unmarshalling the protocol buffer response to a custom struct. - Add support for storing and retrieving raw bytes.
- Cleaner and more intuitive API for doing mutations.
Improvements
- Move away from RocksDB and get rid of CGO. Start using Badger.
- Assign uids sequentially.
- Allow retrieving other children with
@groupby. - Allow aliases for math expressions.
- Support filtering using multiple tokens with
eq. - Better language lists semantics. Issue #1010
- Add a
uidfunction which can be used for filtering uids at any level. - Allow adding
@countindexes which allow for faster count comparison queries at the root. - Optimisations in how we store Posting List data structure. Store uids separately.
- Allow specifying a max depth argument for the shortest path.
- Support for month, day, hour indexes for dateTime datatype.
- Get rid of
lhmapand add an LRU Cache. We don't do Stop the World anymore.
Changes (from v0.7.7)
datetype is no longer supported as a schema type in Dgraph. You should usedateTimeinstead.- Change of syntax for querying by id.
# Before
{
me(id: [0x1, 0x2]) {
...
}
}
# Now
{
me(func: uid(0x1, 0x2)) {
...
}
}
- Dgraph doesn't fingerprint
xidsanymore. They are now treated similarly to other edges. So now if you had anxidand you wanted to query by it you would use.
# You need to have an index on xid for calling `eq` function.
{
me(func: eq(xid, "alice")) {
....
}
}
/admin/backupis now/admin/export. It outputs blank nodes which can now be used to load data into a fresh instance.- There is a separate port for
http(default 8080) andgrpc(default 9080) now.