-
Notifications
You must be signed in to change notification settings - Fork 233
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add v0 of versioning to AAE hashtree locks, upgrades, and object hashing #1473
Commits on Jun 14, 2016
-
Added logic to hash only vclock for object hashes. Added logging to c…
…atch pre 2.1 vclocks which require a rewrite to be safe Added riak_kv boolean environment variable `hash_only_vclock` which enables/disabled the vclock hashing logic. Additionally, when enabled, we will no longer do the expensive compare/logging on read-repair to catch old pre2.1 vclocks who require a rewrite. Additional logic must be added to `yz_kv.erl` so the hashes in the entropy_data element of the Solr documents match what is stored in KV AAE. Upgrading the hash logic requires clearing all YZ documents and re-indexing everything. This is because we store the obj hash in the Solr document. This will hopefully change in the future to allow for easier AAE changes.
Brian Sparrow committedJun 14, 2016 Configuration menu - View commit details
-
Copy full SHA for 51af50c - Browse repository at this point
Copy the full SHA 51af50cView commit details -
Brian Sparrow committed
Jun 14, 2016 Configuration menu - View commit details
-
Copy full SHA for 7a02691 - Browse repository at this point
Copy the full SHA 7a02691View commit details
Commits on Jun 16, 2016
-
Add version to index hash tree data root
Add a static version “v0” to the data_root of the riak_kv AAE directory. This allows us to isolate old/newer trees as well as support downgrades which will not allow old and new trees to exchange either locally or across MDC.
Brian Sparrow committedJun 16, 2016 Configuration menu - View commit details
-
Copy full SHA for 3f94aef - Browse repository at this point
Copy the full SHA 3f94aefView commit details
Commits on Jun 22, 2016
-
Add version to index_hashtree state, path, and get_lock interface
New error `bad_version` added to the return from `riak_kv_index_hashtree:do_get_lock` if the requested version and the local version of the hash tree do not match. Requires changes in yokozuna and riak_repl to fully function.
Brian Sparrow committedJun 22, 2016 Configuration menu - View commit details
-
Copy full SHA for 52a0ad0 - Browse repository at this point
Copy the full SHA 52a0ad0View commit details -
Allow for version-less lock for subsystems who don't care about version
Brian Sparrow committedJun 22, 2016 Configuration menu - View commit details
-
Copy full SHA for 2f627fb - Browse repository at this point
Copy the full SHA 2f627fbView commit details -
Brian Sparrow committed
Jun 22, 2016 Configuration menu - View commit details
-
Copy full SHA for bf7fa07 - Browse repository at this point
Copy the full SHA bf7fa07View commit details -
Brian Sparrow committed
Jun 22, 2016 Configuration menu - View commit details
-
Copy full SHA for b69cbd8 - Browse repository at this point
Copy the full SHA b69cbd8View commit details
Commits on Jul 20, 2016
-
Change boolean configuration variable to integer version starting with 0. Change all specs from atom() to non_neg_integer() for version number. Add extra logging for invalid non-integer hash version configurations.
Brian Sparrow committedJul 20, 2016 Configuration menu - View commit details
-
Copy full SHA for 14bd8e5 - Browse repository at this point
Copy the full SHA 14bd8e5View commit details -
Handle cases where KV is unavailable during an exchange
Was not correctly handling case where Result list was empty of valid object responses or only a single valid response.
Brian Sparrow committedJul 20, 2016 Configuration menu - View commit details
-
Copy full SHA for 542aebb - Browse repository at this point
Copy the full SHA 542aebbView commit details
Commits on Aug 15, 2016
-
Clarity that the first element of the result is a partition Idx
Brian Sparrow committedAug 15, 2016 Configuration menu - View commit details
-
Copy full SHA for 010a9ff - Browse repository at this point
Copy the full SHA 010a9ffView commit details -
Forward merge aae hashing change v0
Add version 0 of object hashing(config `object_hash_version`) which hashes only the vclock to represent a version of an object. Also add versioning to index_hashtree get_lock API which now takes a Version parameter. The absence of a version is assumed to be `undefined` and will only be allowed to get a lock if the hash on disk is in legacy format. Upgraded hash trees are located within the anti_entropy data_dir under the directory v0. Currently the only supported version is 0 but the code allows for support of increasing integer versions. Add verbose riak_object:equals check to get_core for all read operations who do not trigger read repair. This logic is to detect potentially pre-2.1 data which may be impacted by old vector clock bugs and should be rewritten before upgrading the hash version for safety.
Brian Sparrow committedAug 15, 2016 Configuration menu - View commit details
-
Copy full SHA for 910adb1 - Browse repository at this point
Copy the full SHA 910adb1View commit details
Commits on Aug 22, 2016
-
WIP commit in case of computer failure or something like that.
Brian Sparrow committedAug 22, 2016 Configuration menu - View commit details
-
Copy full SHA for a3c393b - Browse repository at this point
Copy the full SHA a3c393bView commit details
Commits on Aug 31, 2016
-
WIP push of many commits rebased. This broke some things and I'm stil…
…l recovering some history
Brian Sparrow committedAug 31, 2016 Configuration menu - View commit details
-
Copy full SHA for c8b708f - Browse repository at this point
Copy the full SHA c8b708fView commit details
Commits on Sep 1, 2016
-
Finish grabbing omitted final commits from previous rebase
Brian Sparrow committedSep 1, 2016 Configuration menu - View commit details
-
Copy full SHA for 98e05af - Browse repository at this point
Copy the full SHA 98e05afView commit details -
Brian Sparrow committed
Sep 1, 2016 Configuration menu - View commit details
-
Copy full SHA for cbeb66e - Browse repository at this point
Copy the full SHA cbeb66eView commit details -
Fix pattern match, compiler issues
Also, add some testing logs and debug functions.
Brian Sparrow committedSep 1, 2016 Configuration menu - View commit details
-
Copy full SHA for c77b12f - Browse repository at this point
Copy the full SHA c77b12fView commit details -
Fix errors and remove some log spam by checking too frequently
Brian Sparrow committedSep 1, 2016 Configuration menu - View commit details
-
Copy full SHA for 94c17f5 - Browse repository at this point
Copy the full SHA 94c17f5View commit details -
Brian Sparrow committed
Sep 1, 2016 Configuration menu - View commit details
-
Copy full SHA for e13b5a4 - Browse repository at this point
Copy the full SHA e13b5a4View commit details
Commits on Sep 2, 2016
-
Fix replies for vnode:command handling hash tree upgrade
Brian Sparrow committedSep 2, 2016 Configuration menu - View commit details
-
Copy full SHA for 48f5e54 - Browse repository at this point
Copy the full SHA 48f5e54View commit details
Commits on Sep 8, 2016
-
Additionally, cleaned up the anode code which killed the hash tree on upgrade. Removed one binary layer from the riak_object:hash and added the build locks(different from concurrency lock(doh)) to the upgrade procedure so we won’t kill trees and then have them sit empty until we can get a build lock.
Brian Sparrow committedSep 8, 2016 Configuration menu - View commit details
-
Copy full SHA for 586ea62 - Browse repository at this point
Copy the full SHA 586ea62View commit details
Commits on Sep 9, 2016
-
Change some logging to debug to reduce log spam during upgrade
Brian Sparrow committedSep 9, 2016 Configuration menu - View commit details
-
Copy full SHA for 1848c00 - Browse repository at this point
Copy the full SHA 1848c00View commit details -
Brian Sparrow committed
Sep 9, 2016 Configuration menu - View commit details
-
Copy full SHA for 79e910b - Browse repository at this point
Copy the full SHA 79e910bView commit details -
Defined orddict as a type for dialyzer
Brian Sparrow committedSep 9, 2016 Configuration menu - View commit details
-
Copy full SHA for 5166583 - Browse repository at this point
Copy the full SHA 5166583View commit details
Commits on Sep 12, 2016
-
5
Configuration menu - View commit details
-
Copy full SHA for 0e6bb3e - Browse repository at this point
Copy the full SHA 0e6bb3eView commit details