Permalink
Switch branches/tags
Commits on Mar 10, 2017
Commits on Mar 7, 2017
Commits on Feb 21, 2017
  1. Add riak_core_security:find_unique_user_by_metadata (#885)

    ian-mi authored and thumbot committed Feb 21, 2017
    * Add riak_core_security:find_unique_user_by_metadata
    
    This functions identically to find_one_user_by_metadata but returns
    {error, not_unique} if there are multiple users with matching
    metadata.
    * Merge branch 'develop' into find-unique-user-by-metadata
Commits on Feb 15, 2017
  1. Add riak_core_security:find_user (#892)

    ian-mi authored and thumbot committed Feb 15, 2017
    * Add riak_core_security:find_user
Commits on Jan 26, 2017
  1. Merge pull request #897 from basho/nem-update-behaviors-to-use-callba…

    nickelization committed Jan 26, 2017
    …ck-specs
    
    Update behavior specs to use -callback directives
Commits on Jan 20, 2017
  1. Remove dialyzer.ignore-warnings file (#896)

    nickelization authored and thumbot committed Jan 20, 2017
    * Remove dialyzer.ignore-warnings file
    
    Turns out none of the warnings in this file actually exist anymore.
    
    More generally, I can't remember the last time I've written code that
    generated a warning that wasn't fixable. Rather than emptying out
    dialyzer.ignore-warnings, I'm just going to blow it away altogether to
    discourage people from relying on it in the future. We can always add it
    back if we really need it.
Commits on Jan 9, 2017
  1. Merge pull request #781 from basho/fix-dropped-vnode-requests-RIAK-2169

    bsparrow435 committed Jan 9, 2017
    Fix RIAK-2169, error with counter 'dropped_vnode_requests' -- was inc [JIRA: RIAK-2203]
Commits on Jan 6, 2017
  1. Merge pull request #889 from basho/find-bucket-grants

    ian-mi committed Jan 6, 2017
    Find bucket grants
  2. Test group grants in test_find_bucket_grants

    ian-mi committed Dec 17, 2016
    Test both a normal group as well as the 'all' group.
  3. Handle 'all' atom in bin2name

    ian-mi committed Dec 17, 2016
  4. Add riak_core_security:find_bucket_grants

    ian-mi committed Dec 14, 2016
    Returns all grants affecting the specified bucket.
Commits on Dec 29, 2016
  1. Add thumbs (#879)

    davidx authored and thumbot committed Dec 29, 2016
    * add thumbs
    * Hopefully resolve test process stop issues.
    
    - Add a call to `meck:unload/0` in setup for all tests that use meck
      in order to make sure meck processes are unloaded _before_ starting
      up new ones. It appears eunit doesn't always call a teardown function
      before moving on to another test, so they can't be depended upon.
    - unlink before stopping `riak_core_ring_manager` and `riak_core_ring_events`
      in `core_vnode_eqc` - this seems to be what was actually causing the
      "unexpected exit" of a test process.
    - add `stop_pid/2` in riak_core_test_util so you can pass an exit type
      which was being used by a test and failing
    - unlink processes that are `start_link`ed to tests
    - Fix sync command typo to stop riak_core_ring_events
    * Add some additional fixes to stopping processes started with `start_link`.
    - Stop proesses start_linked
    - Add a `spawn` wrapper around a test to see if it helps with isolating tests (it did).
    * `meck:unload()` before starting `core_vnode_eqc` test.
    
    Ends up, the `meck` calls in `riak_core_util` were breaking
    `core_vnode_eqc`, which doesn't even _use_ `meck`. Call `meck:unload()`
    at end of test in `riak_core_util` (not in test teardown, which can also
    cause problems), and again at the beginning of `core_vnode_eqc` just in
    case some new test later on tries to break it again.
    * Move `riak_core_capability` tests to their own file.
    
    Because of `meck` issues we need to keep unit tests and modules
    separate for modules that are mecked in other tests.
    * Address review comments on test fixes.
    
    - add `set_broadcast_module/2` to riak_core_node_watcher, wrapped in
      an `-ifdef(TEST)` so we can potentially change the implementation
      later without having to change the test, which used to do a direct
      `gen_server:call` to the `set_bcast_mod` `handle_call` function.
    - Change `riak_core_ring_manager:stop/0` from a cast to a call. As a
      cast, it leaves us vulnerable to potential race conditions in test
      startup/shutdown. Because it was only a test function anyway, making
      the caller wait for the stop seems reasonable. Also wrapped it in
      `-ifdef(TEST)` to make sure it's not called from production code.
    - Add `unlink_named_process` to `riak_core_test_util` and use it
      where we had `unlink(whereis(name_of_process))`
    - remove last copy/paste of `stop_pid` function from `bg_manager_eqc`
      and `core_vnode_eqc` and use `riak_core_test_util` functions instead.
    - Fix copyright notice in bucket_eqc_utils.
    - Found that we needed to call `meck:unload` after each test in
      `bprops_eqc` and `btypes_eqc` to avoid a meck/coverdata issue.
      Moved setup and unload of `meck`s in `bucket_eqc_utils` to the
      `per_test_setup` function and dropped `setup_cleanup/0` as it was no
      longer doing anything.
    * Update `bprops_eqc` and `btypes_eqc` to use `eqc:testing_time` instead
    of `eqc:numtests` as it's possible for it to time out via `eunit` if
    you allow them to do 100 iterations.
Commits on Dec 15, 2016
  1. Merge pull request #884 from basho/nem-fix-overload-sync-command-hang

    nickelization committed Dec 15, 2016
    Fix sync_spawn_command hang triggered by bug in vnode proxy overload handling
Commits on Dec 14, 2016
  1. Add match_grants utility function to riak_core_security

    ian-mi committed Dec 14, 2016
    match_grants allows the enumeration of grants based on a pattern,
    eliminating the need to directly call riak_core_metadata:fold or to
    explicitly filter tombstones.
Commits on Dec 13, 2016
  1. Merge pull request #888 from basho/nem-add-count-util-func

    nickelization committed Dec 13, 2016
    Add count/2 function to riak_core_util
  2. Wrap new EQC test in -ifdef(EQC)

    nickelization committed Dec 13, 2016
    This should prevent things from failing on our builder.
  3. Add count/2 function to riak_core_util

    nickelization committed Dec 13, 2016
    This is useful for determining how many elements of a list match a
    certain criteria, without having to waste memory on intermediate lists,
    and without having to rewrite the fold yourself every time. Similar to
    Enum.count from Elixir.
  4. Fix potential hang due to vnode proxy overload bug

    nickelization committed Dec 13, 2016
    If we call riak_core_vnode_master:sync_spawn_command, it ends up sending
    a gen_event all-state event to the proxy for forwarding. However, in
    handle_overload, the old code only had case clauses for '$gen_event' and
    not '$gen_all_state_event'. This means the event would be passed to
    handle_overload_info instead of handle_overload_request, which would
    likely skip the vnode callback code that sends a response.
    
    In Riak this meant that certain operations would hang during overload,
    since the caller to sync_spawn_command would never be sent a response.
    (This situation was made worse by the fact that the call is being done
    with an infinity timeout, but that's an issue we'll have to address some
    other time.)
Commits on Dec 12, 2016
  1. Merge pull request #882 from basho/object_ttl

    nickelization committed Dec 12, 2016
    Merge sweeper code to develop
Commits on Dec 5, 2016
  1. Merge pull request #881 from basho/jv-handle_no_existing_users

    jvoegele committed Dec 5, 2016
    Handle case where there are no existing users the same as if no users matched
  2. Handle case where there are no existing users the same as if no users…

    jvoegele committed Dec 5, 2016
    … matched
    
    Previously, the `find_one_user_by_metadata` function would return
    `{error, not_found}` for the case when no users matched the metadata
    query, but would return an empty list when there were no existing users
    registered with `riak_core_security`. This change is to make both of
    those cases return the same value: `{error, not_found}`.
Commits on Dec 2, 2016
  1. Merge pull request #875 from basho/ph-jv-s3_user

    paulhenrich committed Dec 2, 2016
    Support finding a user by their associated metadata
  2. Optimize finding one user by metadata

    Paul Henrich
    Paul Henrich committed Dec 1, 2016
    * add support to 'riak_core_metadata:fold/4' for catching {break, Result}
      and returning Result
    * move itr_close to 'fold/4'
    * use new break functionality to return just one user or {error, not_found} in
      'riak_core_security:find_one_user_by_metadata/2'
  3. Merge pull request #863 from basho/jv-refactor_riak_core_app

    jvoegele committed Dec 2, 2016
    Refactor `riak_core_app` for better readability
Commits on Nov 30, 2016
  1. Several cleanup items:

    JeetKunDoug committed Nov 30, 2016
    - Refactor anonymous function into named function `accumulate_if_user_matches_metadata`
    - use `default` and `resolver` options to pick LWW value in
      metadata object, and remove ?TOMBSTONE function head by returning
      an empty list for Options.
  2. Revert change to Username type annotation

    Paul Henrich
    Paul Henrich committed Nov 30, 2016
  3. Rename find_by_metadata to find_user_by_metadata

    Paul Henrich
    Paul Henrich committed Nov 29, 2016
Commits on Nov 29, 2016
  1. Add find_by_metadata for looking up a user by metadata

    Paul Henrich + Jason Voegele
    Paul Henrich + Jason Voegele committed Nov 16, 2016
    * Upgrade some types to named types
    * Add find_by_metadata in riak_core_security
Commits on Nov 18, 2016
  1. Merge pull request #876 from basho/ph-jv-fix_base64url

    borshop committed Nov 18, 2016
    Add unit tests and fix type specs for riak_core_base64url
    
    Reviewed-by: nickelization
  2. Add unit tests and fix type specs for riak_core_base64url

    jvoegele committed Nov 18, 2016
Commits on Nov 16, 2016