19 comments

[ 3.5 ms ] story [ 79.0 ms ] thread
Real-time updates to queries looks awesome. Way simpler than doing pushing updates through pubsub. Great work, guys!
It looks really awesome, I can't wait to check it out! Great work by the team at Rethink.
In the video he calls changes() on a query that has an orderBy and limit filter. In the description for Changefeeds (http://rethinkdb.com/docs/changefeeds/javascript/), it says this is not possible. Is this new functionality? If so, that's pretty great. Using the diff format makes that pretty intuitive (even if the client will be slightly harder to implement).
Yes, this is new functionality that will be released as part of RethinkDB 1.16. RethinkDB 1.16 is expected to ship in a couple of weeks.
How do you handle disconnects and missed messages? What's required to make this a robust sync solution, including syncing the first query and then changes, akin to Firebase? Are there plans to support direct access from web clients and optimistic writes on the client?
Right now you have to start over if your changefeed gets disconnected. But we're discussing better options; see <https://github.com/rethinkdb/rethinkdb/issues/3471>.

We don't have any plans to support direct access from web clients. The main problem is security. RethinkDB doesn't have any notion of users or access privileges, so any client can e.g. drop a table. We might add this eventually, but it's low on the priority list. See <https://github.com/rethinkdb/rethinkdb/issues/266> for more discussion.

Really cool, instead of polling for changes, RethinkDB will push. The best part, you simply add .changes() to your query and it just magically works. Curious though how the clients work? Do they just block waiting for data?
The Ruby and Python clients will block if you try to fetch the next change and there isn't one available. You can prevent this by using a separate thread for the blocking request. The node.js client uses a callback.

We're currently considering alternatives. See <https://github.com/rethinkdb/rethinkdb/issues/3298>.

And any support planned for the red-headed stepchild php?
Have you tried http://php-rql.dnsalias.net/ ? It's pretty much equivalent to the official drivers, and well maintained (usually gets updated within a week after new RethinkDB releases).
Speaker here. As a redhead myself, I approve this message! :)
(comment deleted)
Hey all, Slava @ RethinkDB here (speaker in the video).

We've been working on realtime push functionality for a while and are very excited to release it in a few weeks!

I'm an Oakdale RethinkDB meetup (http://www.meetup.com/GDG-Oakdale/events/219317732/) right now so may not be able to answer questions in realtime, but I'll go through every question later tonight in case other Rethinkers miss some questions.

Hey Slava, thanks to you and the team for all the hard work! Watched the video a little while ago with introductions to all the great features, excited to use the new stream functionality!
(Unrelated)

As someone who grew up in Oakdale, I'm positively shocked to hear there's a tech-related meetup there. Wow!

Is there a slidedeck or blog I can read about this presentation? I want to learn but don't have time to watch the video now.
Here's the documentation on changefeeds, which was a lot of what the presentation was focused on:

http://rethinkdb.com/docs/changefeeds/

This documentation is for RethinkDB 1.15, but the cool features in Slava's presentation are arriving in RethinkDB 1.16.
Accurate - I don't think there's documentation for the 1.16 stuff yet? Though the code is available in the nightlies supposedly