Proto commits in rethinkdb/rethinkdb

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:cad79da
Author:Gabor Boros
Committer:Gabor Boros

feat: add string templating to ReQL Add basic string formatting to ReQL and bump polyglot test target to newer target versions. Signed-off-by: Gabor Boros <gabor.brs@gmail.com>

Commit:64d8d34
Author:Gabor Boros
Committer:Gabor Boros

docs: update reql_docs.js and add fmt Signed-off-by: Gabor Boros <gabor.brs@gmail.com>

Commit:781484f
Author:Lyubomyr Shaydariv
Committer:Gábor Boros

Implement bitwise operations - Core server implementation - ReQL docs - Support in the Java, JavaScript, Python, and Ruby drivers

The documentation is generated from this commit.

Commit:1601118
Author:Lyubomyr Shaydariv
Committer:Sam Hughes

Implement bitwise operations - Core server implementation - ReQL docs - Support in the Java, JavaScript, Python, and Ruby drivers

The documentation is generated from this commit.

Commit:5117ec5
Author:Sam Hughes
Committer:Sam Hughes

Specify proto2 syntax in ql2.proto

Commit:5a9242a
Author:Sam Hughes
Committer:Sam Hughes

Specify proto2 syntax in ql2.proto

Commit:1a6f685
Author:Sam Hughes
Committer:Daniel Mewes

Write hooks with `{'primary_key': , 'timestamp':}`, also fixes r.now determinism problems (#6396) * Restore deterministic r.now * encapsulate deterministic_t * Fix 'class deterministic_t' decl in term.hpp. * Make deterministic_t interface clearer. Avoids external bitmask magic. * Rename deterministic_t static members to traditional names. * Allow r.now() before .changes(). * Make rcheck visitors in seq.cc not use variadic. Just to make code more readable. * Allow r.now() in comparison functions. * Add test polyglot/changefeeds/now * Added order_by r.now() regression test. * add _t suffix to avoid name clash * Fix simple compilation error. * Misc cleanup of env_t ctor usage - Remove an "explicit" from a multi-arg env_t ctor - Use get_serializable_env in ordered_union_datum_stream_t Because why not. * Make query cache maintain deterministic r.now(). Fixes problem where long datum streams would use a fresh time value every time a new batch is requested. For example, this query would see multiple "b" field values: r.range(150000).map(lambda x: {"a": x, "b": r.now()}) This also makes changefeed requests use the same r.now() value. * Removed defunct term_walker_t time_now field. * Make read_all_rows_as_vector abstract. Everybody overrides it, and nobody overrides read_all_rows_as_stream. Made the latter not be virtual. * Factor out read_all_rows_filtered to return as vector. Make callers use it: - caching_cfeed_artificial_table_backend_t - table_estimate_doc_counts * Make from_optargs take deterministic_time. So we don't crash when r.now() is used inside a global optarg. * Pass deterministic_time to limit_manager_t env. * Tweak env_t construction in range_sub_t. No functional change, just a cleanup. * Unimplemented write_timestamp_term_t WIP. * env_t style cleanup * Implemented write_timestamp_term_t::eval_impl * Write hooks ostensibly getting run in their own environment. * Add WRITE_TIMESTAMP to protobuf definition * r.writeTimestamp() in the JavaScript driver * r.write_timestamp() in the Python driver * js_pprint of write_timestamp is just fine. * Comment on env_t constructor * Write hooks disallowing r.now(). * Removed duplicate write hook checking logic. * Pass {"primary_key":, "timestamp":} object to write hooks * Remove r.write_timestamp() ReQL term * Remove extra write_timestamp stuff from Python and JS drivers * Add polyglot tests for write hook context object

Commit:51346b4
Author:Sam Hughes
Committer:Daniel Mewes

Write hooks with `{'primary_key': , 'timestamp':}`, also fixes r.now determinism problems (#6396) * Restore deterministic r.now * encapsulate deterministic_t * Fix 'class deterministic_t' decl in term.hpp. * Make deterministic_t interface clearer. Avoids external bitmask magic. * Rename deterministic_t static members to traditional names. * Allow r.now() before .changes(). * Make rcheck visitors in seq.cc not use variadic. Just to make code more readable. * Allow r.now() in comparison functions. * Add test polyglot/changefeeds/now * Added order_by r.now() regression test. * add _t suffix to avoid name clash * Fix simple compilation error. * Misc cleanup of env_t ctor usage - Remove an "explicit" from a multi-arg env_t ctor - Use get_serializable_env in ordered_union_datum_stream_t Because why not. * Make query cache maintain deterministic r.now(). Fixes problem where long datum streams would use a fresh time value every time a new batch is requested. For example, this query would see multiple "b" field values: r.range(150000).map(lambda x: {"a": x, "b": r.now()}) This also makes changefeed requests use the same r.now() value. * Removed defunct term_walker_t time_now field. * Make read_all_rows_as_vector abstract. Everybody overrides it, and nobody overrides read_all_rows_as_stream. Made the latter not be virtual. * Factor out read_all_rows_filtered to return as vector. Make callers use it: - caching_cfeed_artificial_table_backend_t - table_estimate_doc_counts * Make from_optargs take deterministic_time. So we don't crash when r.now() is used inside a global optarg. * Pass deterministic_time to limit_manager_t env. * Tweak env_t construction in range_sub_t. No functional change, just a cleanup. * Unimplemented write_timestamp_term_t WIP. * env_t style cleanup * Implemented write_timestamp_term_t::eval_impl * Write hooks ostensibly getting run in their own environment. * Add WRITE_TIMESTAMP to protobuf definition * r.writeTimestamp() in the JavaScript driver * r.write_timestamp() in the Python driver * js_pprint of write_timestamp is just fine. * Comment on env_t constructor * Write hooks disallowing r.now(). * Removed duplicate write hook checking logic. * Pass {"primary_key":, "timestamp":} object to write hooks * Remove r.write_timestamp() ReQL term * Remove extra write_timestamp stuff from Python and JS drivers * Add polyglot tests for write hook context object

Commit:47fe12a
Author:Nighelles

Write Hooks for #5813 Allows creating ReQL functions on a table that are applied to each write. Also changes cluster version to 2.4. Review by @danielmewes and @vexocide Implemented in nighelles/5813

Commit:02e47d6
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds permissions checking to `r.http`

Commit:d22ca66
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds `r.grant` and the `rethinkdb.users` table

Commit:a25fe71
Author:Jeroen Habraken
Committer:Jeroen Habraken

`V0_4` backwards compatibility and initial work on authenticators

Commit:4a513ad
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds the handshake to the Python driver

Commit:5087502
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds `r.grant` and the `rethinkdb.users` table

Commit:7669265
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds permissions checking to `r.http`

Commit:4dbec52
Author:Nighelles

Implementing fold term for #3736 Review by @mlucy Squashed commit of the following: commit 2a0a3d4e553b97803d2fc9429539049ab55c5f34 Author: Nighelles <nighelles@rethinkdb.com> Date: Tue Jan 26 18:50:01 2016 -0800 Line length commit 0330c92745f69a3765d585add0817fc2e235556f Author: Nighelles <nighelles@rethinkdb.com> Date: Tue Jan 26 18:31:59 2016 -0800 Fixes for code review commit cc9947294f474c8faa638464b348f606ba513805 Author: Nighelles <nighelles@rethinkdb.com> Date: Tue Jan 26 17:00:37 2016 -0800 Adding codereview fixes commit 5b4e31005ab2515278f61ab78fb1a467302506cd Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 16:48:21 2016 -0800 Couple style guide fixes commit 15ea2646d513439222c245dd7ef6b8e22e980daf Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:47:54 2016 -0800 sanity check commit d7f280fb2efa60e50726542899d8bfecee5de783 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:34:15 2016 -0800 untabify commit 13d653df9daf670a8e67fc37047d62837c72a0e1 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:25:33 2016 -0800 style commit 580662c540f15eb612ec4474b31dad0bc8eafb7a Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:24:48 2016 -0800 Added sanity check for final emit function return value commit bffe1070f7a8a0503af80fbd398f66c34414cd10 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:21:11 2016 -0800 style commit bcf3d082fe14936c34b25364fab3ece2349f510f Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:19:54 2016 -0800 style commit e4dfaf9f31b49f3d209db15674fb0b74e973f01c Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 15:05:19 2016 -0800 still some issues with tabs to spaces before I fixed my emacs config commit a2332026493d4eb07e389763c0dc6dec39ff2f44 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 14:54:43 2016 -0800 style fixes commit 263011fad5d5eefb479f4111b81ed2b4510f95df Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 14:51:23 2016 -0800 Added tests for fold commit 63dbe743c6723cff321bb74f205aca09fbbbc236 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 12:23:09 2016 -0800 Added fold to py, rb, js drivers commit f136043ea1bcaefbe28d4a862adaffe59380f692 Author: Nighelles <nighelles@rethinkdb.com> Date: Mon Jan 18 10:36:29 2016 -0800 Finished implementing server side functionality commit 0479deaf0752dbce32e2425b8c5cdf13ae9f0db2 Author: Nighelles <nighelles@rethinkdb.com> Date: Fri Jan 15 19:02:42 2016 -0800 Working except for emit_final commit cc6741b9525acf21e65ceda430a9709df6d73f5d Author: Nighelles <nighelles@rethinkdb.com> Date: Fri Jan 15 17:59:51 2016 -0800 Mid work commmit on adding fold_datum_stream to handle emit case commit ce781dd6d82f45624c2eaf8ba4af4e1c641eadc5 Author: Nighelles <nighelles@rethinkdb.com> Date: Fri Jan 15 16:03:50 2016 -0800 Implemented Fold for case where there's no emit argument. commit 87f971ca0e7761a40ab58a85b5eb82e98d313018 Author: Nighelles <nighelles@rethinkdb.com> Date: Fri Jan 15 11:23:05 2016 -0800 Layed initial foundation for fold term Mostly procedural things to get the build to recognize fold as a term

Commit:3c98877
Author:Karl Kuehn

spelling fix: occured -> occurred per #4757 Over-the-virtual-shoulder by @danielmewes Based on work by @alexsalas from pull request #4757

Commit:60a604a
Author:Michael Lucy

Added some comments to ql2.proto.

Commit:efd2a46
Author:Chris Kastorff
Committer:Chris Kastorff

implement conn.server() Fixes #3934

Commit:0f47dc7
Author:Daniel Mewes

Resumable secondary index construction. Also reduces the impact of index construction on the performance of write queries. Fixes #4959.

Commit:1cd2122
Author:Marc Hesse

Removed protobufs from the query pipeline Added term_storage_t and raw_term_t to abstract away the underlying protocol. Reworked and moved the protob directory to the client_protocol directory. Added migration for v2.1 to 2.2, which will rewrite any stored functions with the json protocol.

Commit:69461f6
Author:Chris Kastorff
Committer:Chris Kastorff

add values() reql term to mirror keys() #2495

Commit:3366fe6
Author:Michael Lucy

Updated error hierarchy in Ruby.

Commit:2cd1bd4
Author:Michael Lucy
Committer:Michael Lucy

Merged in multiple error types changes.

Commit:1513a25
Author:Michael Lucy
Committer:Michael Lucy

Added more exception types.

Commit:f58fa7a
Author:Marc Hesse
Committer:Marc Hesse

converting tests and drivers 'use_outdated' to 'read_mode'

Commit:26a063e
Author:Marc Hesse
Committer:Marc Hesse

Adding read_mode optarg, replacing use_outdated

Commit:f56644a
Author:Tim Maxwell

Hook up user-facing interface for emergency repair.

Commit:3245e98
Author:Tim Maxwell

WIP: Expose nonvoting_replica_tags in table_create() and reconfigure().

Commit:b8575e6
Author:Peter Hamilton

Update proto doc for contains

Commit:71d4ff6
Author:Peter Hamilton

Update ql2.proto docs with option for order_by

Commit:4d0a80e
Author:Marc Hesse

changing backtraces to use ids rather than inefficient arrays

Commit:1104380
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds `r.floor`, `r.ceil`, and `r.round`

Commit:548df88
Author:Jeroen Habraken
Committer:Jeroen Habraken

Fixes review feedback

Commit:19174be
Author:Jeroen Habraken
Committer:Jeroen Habraken

Document the empty `literal`

Commit:a26e46e
Author:Jeroen Habraken

Document the empty `literal`

Commit:9a0e377
Author:Michael Lucy

spelling

Commit:0936b31
Author:Michael Lucy
Committer:Michael Lucy

Implement support for `include_states`.

Commit:62bbf33
Author:Michael Lucy
Committer:Michael Lucy

Implement ResponseNotes.

Commit:701b2cf
Author:Marc Hesse
Committer:Marc Hesse

adding r.minval and r.maxval terms, between no longer accepts null bounds

Commit:c4c6b0a
Author:Jeroen Habraken
Committer:Jeroen Habraken

Removes any and all

Commit:0d0c2c4
Author:Jeroen Habraken
Committer:Jeroen Habraken

Renames indexes_of to offsets_of

Commit:2263e79
Author:Michael Lucy

Bumped protocol version.

Commit:7105b28
Author:Graham Hughes
Committer:Graham Hughes

Add `SUCCESS_ATOM_FEED` to protocol buffer spec.

Commit:f7d90b8
Author:Marc Hesse
Committer:Marc Hesse

fixing incorrect protobuf description and improving an r.time backtrace

Commit:599943d
Author:Tim Maxwell

Fix #3518.

Commit:7cbfc70
Author:Tim Maxwell

Merge branch 'tim/config-status-porcelains' into next Conflicts: src/rdb_protocol/ql2.proto src/rdb_protocol/terms/db_table.cc test/interface/permanently_remove.py test/interface/system_changefeeds.py test/interface/table_acks_durability.py test/interface/table_config.py test/interface/table_reconfigure.py test/interface/unsatisfiable_goals_issue.py test/rql_test/src/meta/table.yaml test/scenarios/change_primary.py test/scenarios/failover_to_secondary.py test/scenarios/kill_access_point.py test/scenarios/kill_secondary.py test/scenarios/more_or_less_secondaries.py test/scenarios/transfer.py

Commit:02d6796
Author:Marc Hesse
Committer:Marc Hesse

renaming 'director' to 'primary_replica'

Commit:89a0e35
Author:Tim Maxwell

* Replace table_config(), table_status(), db_config(), and table_wait() with table.config(), table.status(), db.config(), and table.wait(). db.wait() also works now. * Make .reconfigure(), .rebalance(), and .wait() return objects that are compatible with foreach(), among other minor tweaks. * In return values of {table,db}_{create,drop}(), rename created and dropped fields to {table,db}s_{created,dropped}. Also add a tables_dropped field to db_drop(), since it can destroy tables. * Add config_changes field to return value of {table,db}_{create,drop}(). * Simplify real_reql_cluster_interface.cc. Get rid of {,const_,generic_}metadata_searcher_t and friends. This commit doesn't compile and the tests haven't been updated.

Commit:718f225
Author:Tim Maxwell

Merge branch 'tim/3266-identifier-format' into reql_admin Conflicts: src/clustering/administration/real_reql_cluster_interface.cc

Commit:c1cc138
Author:Tim Maxwell

Fix typo in ql2.proto

Commit:808f59e
Author:Tim Maxwell

Fix minor bugs and stylistic issues in tim/3266-identifier-format

Commit:d64abed
Author:Tim Maxwell

Merge branch 'tim/table-create-args-2876' into reql_admin

Commit:54cc472
Author:Tim Maxwell

Update documentation in ql2.proto for TABLE_CREATE.

Commit:8b1ad38
Author:Marc Hesse
Committer:Marc Hesse

fixing review comments

Commit:71de05a
Author:Marc Hesse
Committer:Marc Hesse

correcting the protobuf comments on RECONFIGURE

Commit:40acddd
Author:Tim Maxwell

Improve error messages in rebalance(); improve comments in ql2.proto

Commit:3028afb
Author:Tim Maxwell

Add table.rebalance() and db.rebalance(), but more testing is still needed.

Commit:1c0c455
Author:Tim Maxwell

Make db_config() porcelain work.

Commit:1c90036
Author:Marc Hesse
Committer:Marc Hesse

fixing proto file for table_* return types

Commit:0db130a
Author:Marc Hesse
Committer:Marc Hesse

added framework for table_wait term

Commit:cf33a36
Author:Tim Maxwell

Merge branch 'next' into reql_admin

Commit:54fa558
Author:Jeroen Habraken
Committer:Jeroen Habraken

Extends `map` to be variadic

Commit:fb47c14
Author:Michael Lucy

Merge pull request #3147 from grandquista/grandquista/standard_term_name Add `_` to some term constants for consistency.

Commit:0eb64f1
Author:Tim Maxwell

Merge branch 'next' into reql_admin Conflicts: drivers/python/rethinkdb/__init__.py src/clustering/administration/cli/admin_cluster_link.cc src/clustering/administration/issues/outdated_index.cc src/clustering/administration/issues/outdated_index.hpp src/clustering/administration/main/serve.cc src/clustering/administration/metadata_change_handler.hpp

Commit:82520d6
Author:Jeroen Habraken
Committer:Jeroen Habraken

Adds a range operator that generates all the numbers in a certain range

Commit:d5ba749
Author:Tim Maxwell

Merge branch 'next' into reql_admin Conflicts: src/clustering/administration/http/semilattice_app.cc src/clustering/administration/metadata.cc src/clustering/administration/real_reql_cluster_interface.cc src/protob/protob.cc src/rdb_protocol/btree.cc src/rdb_protocol/val.hpp

Commit:6ce0c59
Author:Adam Grandquist

Revert change to `FUNCALL` term.

Commit:901fbc2
Author:Adam Grandquist

Revert change to `GEOJSON` terms.

Commit:3458cb6
Author:Adam Grandquist

Add `_` to some term constants for consistency. Terms changed: `CONCATMAP` `ORDERBY` `TYPEOF` `FUNCALL` `FOREACH` `GEOJSON` `TO_GEOJSON`

Commit:3d1d3cb
Author:Etienne Laurin
Committer:Etienne Laurin

allow building with protobuf 2.6.0 OTS review by mlucy Closes #3137

Commit:37433a8
Author:Etienne Laurin
Committer:Etienne Laurin

allow building with protobuf 2.6.0

Commit:f67887f
Author:Graham Hughes

Rename `to_json` to `to_json_string` The method named `to_json` is pseudo-magic in Ruby; the json gem defines it on every object, and relies on a zero argument `to_json` method existing on everything nontrivial. This is too much of a headache to work around in the Ruby driver alone, so we are forced to spread the misery and rename the method. Which is tragic, because it breaks consistency, but that’s life.

Commit:1e8b5e1
Author:Graham Hughes

Implement `to_json` in C++ code.

Commit:b67a2ea
Author:Tim Maxwell

Merge branch 'next' into reql_admin Conflicts: test/common/driver.py

Commit:5f8004c
Author:neumino

Merge branch 'reql_admin', remote-tracking branch 'origin' into michel_2879_reql_admin

Commit:02a946f
Author:neumino

Merge branch 'reql_admin', remote-tracking branch 'origin' into michel_2879_reql_admin

Commit:abd51c6
Author:Tim Maxwell

Merge commit '334516d6f618970adce3b9595f0dfdee76f64481' into reql_admin (This merge is on next right before the change that removes the fake pointer interface from datum_t. I'm merging it into reql_admin separately to make the fake pointer merge as small as possible.)

Commit:b3ca440
Author:Daniel Mewes

Introduced polygon_sub term to replace sub() on polygons.

Commit:078eaf7
Author:Tim Maxwell

Merge branch 'next' into reql_admin Conflicts: test/full_test/interface.test

Commit:28588be
Author:Daniel Mewes

Fix type signature in ql2.proto comments for line and polygon

Commit:50fb068
Author:Daniel Mewes

Completed implementation of lazy get_intersecting. Testing an unit test pending.

Commit:3fb8c33
Author:Tim Maxwell

Add comments in ql2.proto explaining what TABLE_CONFIG and TABLE_STATUS are for.

Commit:6f28a2f
Author:Tim Maxwell

Merge branch 'reql_admin' into tim_uuid_primary_key Conflicts: src/clustering/administration/namespace_metadata.hpp src/clustering/administration/tables/lookup.cc src/clustering/administration/tables/table_config.cc src/clustering/administration/tables/table_config.hpp src/clustering/administration/tables/table_status.cc src/rdb_protocol/ql2.proto src/rdb_protocol/term.cc src/rdb_protocol/term_walker.cc test/full_test/interface.test

Commit:45fc232
Author:Tim Maxwell

Add r.table_config() and r.table_status() porcelains

Commit:858c8a5
Author:Tim Maxwell

Make rethinkdb.server_config use UUID as primary key, and remove r.server_rename() command.

Commit:877b517
Author:Tim Maxwell

Fix proto buffer ID collision.

Commit:04e49f8
Author:Tim Maxwell

Merge branch 'reql_admin' into tim_table_reconfigure

Commit:fbea569
Author:Tim Maxwell

Merge branch 'next' into reql_admin

Commit:7c9b3d8
Author:Graham Hughes
Committer:Graham Hughes

Renumber BRACKET to 157, since INDEX_RENAME stole 156

Commit:6b212f4
Author:Graham Hughes
Committer:Graham Hughes

Renumber BRACKET again.

Commit:2631b3e
Author:Graham Hughes
Committer:Graham Hughes

Record obsolete instructions and renumber BRACKET

Commit:4d9731b
Author:Graham Hughes
Committer:Graham Hughes

Add bracket term to language.

Commit:830c876
Author:Tim Maxwell

Merge branch 'reql_admin' into tim_table_reconfigure Conflicts: drivers/javascript/ast.coffee src/clustering/administration/artificial_reql_cluster_interface.cc src/clustering/administration/tables/table_config.cc

Commit:5f34276
Author:Tim Maxwell

Merge branch 'next' into reql_admin

Commit:b2175ff
Author:Marc Hesse
Committer:Marc Hesse

adding r.binary support to the server

Commit:7acffc9
Author:Marc Hesse
Committer:Marc Hesse

adding r.binary support to the server

Commit:5da1da6
Author:Tim Maxwell

Merge branch 'next' into reql_admin Conflicts: drivers/python/rethinkdb/__init__.py scripts/check_style.sh src/clustering/administration/admin_tracker.cc src/clustering/administration/admin_tracker.hpp src/clustering/administration/cli/admin_cluster_link.cc src/clustering/administration/cli/admin_cluster_link.hpp src/clustering/administration/main/serve.cc src/clustering/administration/metadata.cc src/clustering/administration/metadata.hpp

Commit:da09b85
Author:Graham Hughes
Committer:Graham Hughes

Revert UUID command for v1.14.x Per @coffeemug, this will have to wait for 1.15; we're too close to release.

Commit:fb1c452
Author:Tim Maxwell

Add table.reconfigure() term