Skip to content
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

correct sorting order wrt nulls first/last spec [JIRA: RIAK-3209] #1618

Merged

Conversation

hmmr
Copy link
Contributor

@hmmr hmmr commented Jan 26, 2017

This fixes the ordering logic of ORDER BY for columns with nulls, to conform to the SQL Standard (https://drive.google.com/file/d/0B-2H_9GJ40JpMDAwY0VyWjkwSWc, page 617). Specifically, a column with nulls will be sorted as follows:

ASC NULLS LAST yields
1, 2, 3, null, null
ASC NULLS FIRST yields
null, null, 1, 2, 3
DESC NULLS LAST yields
null, null, 3, 2, 1
DESC NULLS FIRST yields
3, 2, 1, null, null

Note that the test was also updated to reflect this change: basho/riak_test@c595fe7.

@thumbot
Copy link

thumbot commented Jan 26, 2017

Thanks @hmmr!

Settings
---
minimum_reviewers: 2
merge: true
build_steps:
- make clean
- make deps
- make compile
- make test
- make xref
- make dialyzer
org_mode: true
timeout: 1800

@thumbot
Copy link

thumbot commented Jan 26, 2017

fix-az-correct_orderby_sorting_wrt_nulls 480d180 ➡️ riak_ts-integration-1.5.2 dfb1509 ✅ completed
Looks good! 👍
✅ MERGE

Started at: 2017-01-26 11:58
Duration: 3 seconds.
Result: OK
Message: Merge Success: fix-az-correct_orderby_sorting_wrt_nulls 480d180 onto target branch: riak_ts-integration-1.5.2 dfb1509
Exit Code: OK

📄







  Updating dfb1509..480d180
Fast-forward (no commit created; -m option ignored)
 src/riak_kv_qry_buffers_ldb.erl | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)




✅ MAKE_CLEAN

Started at: 2017-01-26 11:58
Duration: 1 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make clean




  ./rebar clean
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (clean)
rm -rf test.*-temp-data





✅ MAKE_DEPS

Started at: 2017-01-26 11:58
Duration: 31 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make deps




  ./rebar get-deps
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (get-deps)
Pulling sidejob from {git,"https://github.com/basho/sidejob.git",
                          {tag,"2.0.1"}}
Cloning into 'sidejob'...
Pulling erlang_js from {git,"https://github.com/basho/erlang_js.git",
                            {tag,"1.3.0"}}
Cloning into 'erlang_js'...
Pulling bitcask from {git,"https://github.com/basho/bitcask.git",
                          {tag,"2.0.6"}}
Cloning into 'bitcask'...
Pulling eper from {git,"https://github.com/basho/eper.git",{tag,"0.97.5p1"}}
Cloning into 'eper'...
Pulling sext from {git,"https://github.com/basho/sext.git",{tag,"1.1p6"}}
Cloning into 'sext'...
Pulling riak_pipe from {git,"https://github.com/basho/riak_pipe.git",
                            {branch,"riak_ts-integration-1.5.2"}}
Cloning into 'riak_pipe'...
Pulling riak_api from {git,"https://github.com/basho/riak_api.git",
                           {branch,"riak_ts-integration-1.5.2"}}
Cloning into 'riak_api'...
Pulling riak_dt from {git,"https://github.com/basho/riak_dt.git",
                          {tag,"2.1.3"}}
Cloning into 'riak_dt'...
Pulling msgpack from {git,"https://github.com/basho/msgpack-erlang.git",
                          {tag,"0.3.5"}}
Cloning into 'msgpack'...
Pulling riak_ql from {git,"https://github.com/basho/riak_ql.git",
                          {branch,"integration-1.5.2"}}
Cloning into 'riak_ql'...
Pulling jam from {git,"https://github.com/basho/jam.git",{tag,"1.0.0"}}
Cloning into 'jam'...
Pulling eunit_formatters from {git,"https://github.com/basho/eunit_formatters",
                                   {tag,"0.1.2"}}
Cloning into 'eunit_formatters'...
Pulling hyper from {git,"https://github.com/basho/hyper",{tag,"1.0.0"}}
Cloning into 'hyper'...
==> sidejob (get-deps)
==> erlang_js (get-deps)
==> bitcask (get-deps)
Pulling meck from {git,"https://github.com/basho/meck.git",{tag,"0.8.2"}}
Cloning into 'meck'...
Pulling cuttlefish from {git,"https://github.com/basho/cuttlefish.git",
                             {tag,"2.0.10"}}
Cloning into 'cuttlefish'...
==> meck (get-deps)
==> cuttlefish (get-deps)
Pulling getopt from {git,"https://github.com/basho/getopt.git",{tag,"v0.8.2"}}
Cloning into 'getopt'...
Pulling lager from {git,"https://github.com/basho/lager.git",{tag,"3.2.4"}}
Cloning into 'lager'...
Pulling neotoma from {git,"https://github.com/basho/neotoma.git",
                          {tag,"1.7.3"}}
Cloning into 'neotoma'...
==> getopt (get-deps)
==> lager (get-deps)
Pulling goldrush from {git,"https://github.com/basho/goldrush.git",
                           {tag,"0.1.9"}}
Cloning into 'goldrush'...
==> goldrush (get-deps)
==> neotoma (get-deps)
==> eper (get-deps)
==> sext (get-deps)
Pulling edown from {git,"git://github.com/basho/edown.git",{tag,"0.8.1"}}
Cloning into 'edown'...
==> edown (get-deps)
==> riak_pipe (get-deps)
Pulling riak_core from {git,"git://github.com/basho/riak_core.git",
                            {branch,"riak_ts-integration-1.5.2"}}
Cloning into 'riak_core'...
==> jam (get-deps)
==> riak_core (get-deps)
Pulling poolboy from {git,"https://github.com/basho/poolboy.git",
                          {tag,"0.8.1p3"}}
Cloning into 'poolboy'...
Pulling basho_stats from {git,"https://github.com/basho/basho_stats.git",
                              {tag,"1.0.3"}}
Cloning into 'basho_stats'...
Pulling riak_sysmon from {git,"https://github.com/basho/riak_sysmon.git",
                              {tag,"2.1.4"}}
Cloning into 'riak_sysmon'...
Pulling riak_ensemble from {git,"https://github.com/basho/riak_ensemble",
                                {branch,"riak_ts-integration-1.5.2"}}
Cloning into 'riak_ensemble'...
Pulling pbkdf2 from {git,"https://github.com/basho/erlang-pbkdf2.git",
                         {tag,"2.0.0"}}
Cloning into 'pbkdf2'...
Pulling eleveldb from {git,"https://github.com/basho/eleveldb.git",
                           {branch,"riak_ts-integration-1.5.2"}}
Cloning into 'eleveldb'...
Pulling exometer_core from {git,"https://github.com/basho/exometer_core.git",
                                {tag,"1.0.0-basho9"}}
Cloning into 'exometer_core'...
Pulling clique from {git,"https://github.com/basho/clique.git",{tag,"0.3.8"}}
Cloning into 'clique'...
==> poolboy (get-deps)
==> basho_stats (get-deps)
==> riak_sysmon (get-deps)
==> msgpack (get-deps)
==> eleveldb (get-deps)
Cloning into 'leveldb'...
Note: checking out '2.0.33'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at 69a8fc1... add stub code for viewing Riak objects.  need way to conditional compile OS versus EE for this to be live
==> riak_ensemble (get-deps)
==> pbkdf2 (get-deps)
==> src (get-deps)
==> exometer_core (get-deps)
Pulling parse_trans from {git,"git://github.com/basho/parse_trans.git",
                              {tag,"2.9.2p1"}}
Cloning into 'parse_trans'...
Pulling folsom from {git,"git://github.com/basho/folsom.git",{tag,"0.7.4p5"}}
Cloning into 'folsom'...
Pulling setup from {git,"git://github.com/basho/setup.git",{tag,"1.4"}}
Cloning into 'setup'...
==> parse_trans (get-deps)
==> folsom (get-deps)
Pulling bear from {git,"git://github.com/basho/bear.git",{tag,"0.1.3p1"}}
Cloning into 'bear'...
==> bear (get-deps)
==> setup (get-deps)
==> clique (get-deps)
==> riak_api (get-deps)
Pulling riak_pb from {git,"https://github.com/basho/riak_pb.git",
                          {tag,"2.2.0.2"}}
Cloning into 'riak_pb'...
Pulling webmachine from {git,"https://github.com/basho/webmachine.git",
                             {tag,"1.10.8p2"}}
Cloning into 'webmachine'...
==> riak_pb (get-deps)
Pulling protobuffs from {git,"https://github.com/basho/erlang_protobuffs.git",
                             {tag,"0.9.0"}}
Cloning into 'protobuffs'...
Pulling hamcrest from {git,"https://github.com/basho/hamcrest-erlang.git",
                           {tag,"0.3.0-basho"}}
Cloning into 'hamcrest'...
==> protobuffs (get-deps)
==> hamcrest (get-deps)
==> webmachine (get-deps)
Pulling mochiweb from {git,"git://github.com/basho/mochiweb.git",
                           {tag,"v2.9.0p2"}}
Cloning into 'mochiweb'...
==> mochiweb (get-deps)
==> riak_dt (get-deps)
==> riak_ql (get-deps)
Pulling unite from {git,"https://github.com/basho/unite.git",{tag,"v0.0.1p2"}}
Cloning into 'unite'...
Pulling merl from {git,"https://github.com/basho/merl.git",
                       {tag,"0.1.0-basho"}}
Cloning into 'merl'...
==> unite (get-deps)
Pulling color from {git,"https://github.com/basho/erlang-color.git",
                        {tag,"v0.2.0p1"}}
Cloning into 'color'...
Pulling tdiff from {git,"https://github.com/basho/tdiff.git",{tag,"0.1"}}
Cloning into 'tdiff'...
==> color (get-deps)
==> tdiff (get-deps)
==> merl (get-deps)
==> eunit_formatters (get-deps)
==> hyper (get-deps)
Pulling proper from {git,"https://github.com/basho/proper.git",{tag,"v1.2p1"}}
Cloning into 'proper'...
Pulling stdlib2 from {git,"https://github.com/basho/stdlib2.git",
                          {tag,"0.0.1"}}
Cloning into 'stdlib2'...
==> proper (get-deps)
==> stdlib2 (get-deps)





✅ MAKE_COMPILE

Started at: 2017-01-26 11:58
Duration: 100 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make compile




  
  
... Snipped 1949 lines ...
 src/riak_api_app.erl
Compiled src/riak_core_pb_bucket_type.erl
Compiled src/riak_core_pb_bucket.erl
Compiled src/riak_api_pb_sup.erl
Compiled src/riak_api_basic_pb_service.erl
Compiled src/riak_api_pb_registrar.erl
Compiled src/riak_api_wm_urlmap.erl
Compiled src/riak_api_ssl.erl
Compiled src/riak_api_pb_server.erl
==> riak_dt (compile)
Compiled src/riak_dt.erl
Compiled src/riak_dt_lwwreg.erl
Compiled src/riak_dt_gcounter.erl
Compiled src/riak_dt_orset.erl
Compiled src/riak_dt_vclock.erl
Compiled src/riak_dt_od_flag.erl
Compiled src/riak_dt_enable_flag.erl
Compiled src/riak_dt_gset.erl
Compiled src/riak_dt_oe_flag.erl
Compiled src/riak_dt_emcntr.erl
Compiled src/riak_dt_disable_flag.erl
Compiled src/riak_dt_pncounter.erl
Compiled src/riak_dt_orswot.erl
Compiled src/riak_dt_map.erl
==> color (compile)
Compiled src/color.erl
==> tdiff (compile)
Compiled src/tdiff_benchmark.erl
Compiled src/tdiff_debug.erl
Compiled src/tdiff.erl
==> unite (compile)
Compiled src/unite_compact.erl
==> merl (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/merl'
erlc -pz ./priv -pa ./ebin +debug_info -o ebin/ src/merl.erl
erlc -DMERL_NO_TRANSFORM +debug_info -o priv/ src/merl_transform.erl
erlc -pz ./priv -pa ./ebin +debug_info -o ebin/ src/merl_transform.erl
erlc -pz ./priv -pa ./ebin +debug_info -o ebin/ src/merl_tests.erl
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/merl'
==> riak_ql (compile)
Compiled src/riak_ql_lexer.xrl
Compiled src/riak_ql_parser.yrl
Compiled src/riak_ql_lexer.erl
Compiled src/riak_ql_parser.erl
Compiled src/riak_ql_component.erl
Compiled src/riak_ql_show_create_table.erl
Compiled src/riak_ql_ddl_util.erl
Compiled src/riak_ql_cmd.erl
Compiled src/riak_ql_describe.erl
Compiled src/riak_ql_window_agg_fns.erl
Compiled src/riak_ql_quanta.erl
Compiled src/riak_ql_to_string.erl
Compiled src/riak_ql_ddl.erl
Compiled src/riak_ql_ddl_compiler.erl
==> eunit_formatters (compile)
Compiled src/binomial_heap.erl
Compiled src/eunit_progress.erl
==> proper (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper'
./write_compile_flags include/compile_flags.hrl
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper'
Compiled src/strip_types.erl
Compiled src/vararg.erl
src/proper_types.erl:342: Warning: missing specification for function from_binary/1
src/proper_types.erl:467: Warning: missing specification for function unwrap/1
/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper/src/proper_types.erl:342: Warning: missing specification for function from_binary/1
/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper/src/proper_types.erl:467: Warning: missing specification for function unwrap/1
Compiled src/proper_types.erl
Compiled src/proper_dict.erl
Compiled src/proper_queue.erl
Compiled src/proper_unicode.erl
Compiled src/proper_unused_imports_remover.erl
Compiled src/proper_arith.erl
Compiled src/proper_prop_remover.erl
Compiled src/proper_sets.erl
Compiled src/proper_ordsets.erl
Compiled src/proper_gen.erl
Compiled src/proper_shrink.erl
Compiled src/proper_gb_sets.erl
Compiled src/proper_orddict.erl
Compiled src/proper_gb_trees.erl
Compiled src/proper_array.erl
Compiled src/proper_symb.erl
Compiled src/proper_statem.erl
Compiled src/proper_transformer.erl
Compiled src/proper_fsm.erl
Compiled src/proper.erl
Compiled src/proper_typeserver.erl
==> stdlib2 (compile)
Compiled src/s2_gen_lattice.erl
Compiled src/s2_util.erl
Compiled src/s2_gen_db.erl
Compiled src/s2_env.erl
Compiled src/s2_export.erl
Compiled src/s2_funs.erl
Compiled src/s2_lists.erl
Compiled src/s2_loop.erl
Compiled src/s2_strats.erl
Compiled src/s2_maps.erl
Compiled src/s2_dot.erl
Compiled src/s2_sh.erl
Compiled src/s2_time.erl
Compiled src/s2_maybe.erl
Compiled src/s2_csets.erl
Compiled src/s2_hex.erl
Compiled src/s2_rand.erl
Compiled src/s2_pn_counters.erl
Compiled src/s2_procs.erl
Compiled src/s2_iolists.erl
Compiled src/s2_fs.erl
Compiled src/s2_atoms.erl
Compiled src/s2_vclocks.erl
Compiled src/s2_par.erl
==> hyper (compile)
Compiled src/hyper_register.erl
Compiled src/hyper_gb.erl
Compiled src/hyper.erl
Compiled src/hyper_array.erl
Compiled src/hyper_binary.erl
Compiled src/hyper_const.erl
Compiled src/hyper_binary_rle.erl
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (compile)
Compiling src/riak_core.proto

=INFO REPORT==== 26-Jan-2017::12:00:13 ===
Writing header file to "riak_core_pb.hrl"

=INFO REPORT==== 26-Jan-2017::12:00:13 ===
Writing beam file to "riak_core_pb.beam"
Compiled src/riak_kv_backend.erl
Compiled src/riak_kv_test_util.erl
Compiled src/riak_kv_ensemble_backend.erl
Compiled src/riak_kv_ttb_ts.erl
Compiled src/riak_kv_ts_util.erl
Compiled src/raw_link_walker.erl
Compiled src/riak_kv_mrc_sink.erl
Compiled src/riak_kv_w1c_sup.erl
Compiled src/riak_kv_counter.erl
Compiled src/riak_kv_pipe_get.erl
Compiled src/riak_object.erl
Compiled src/riak_kv_pb_bucket.erl
Compiled src/riak_object_json.erl
Compiled src/riak_kv_pb_index.erl
Compiled src/riak_kv_wm_ts_util.erl
Compiled src/riak_kv_env.erl
Compiled src/riak_kv_requests.erl
Compiled src/riak_kv_cinfo.erl
Compiled src/riak_kv_pipe_index.erl
Compiled src/riak_kv_exometer_sidejob.erl
Compiled src/riak_kv_exchange_fsm.erl
Compiled src/riak_kv_select.erl
Compiled src/riak_kv_qry_compiler.erl
Compiled src/riak_kv_memory_backend.erl
Compiled src/riak_kv_fold_buffer.erl
Compiled src/riak_kv_qry_queue.erl
Compiled src/riak_kv_hooks.erl
Compiled src/riak_kv_mapred_json.erl
Compiled src/riak_kv_js_sup.erl
Compiled src/riak_kv_mrc_pipe.erl
Compiled src/riak_kv_qry_buffers.erl
Compiled src/riak_kv_wm_ping.erl
Compiled src/riak_kv_wm_preflist.erl
Compiled src/riak_kv_qry_worker.erl
Compiled src/riak_kv_hll.erl
Compiled src/riak_kv_bucket.erl
Compiled src/riak_kv_multi_backend.erl
Compiled src/riak_kv_pb_object.erl
Compiled src/riak_kv_mrc_sink_sup.erl
Compiled src/riak_kv_console.erl
Compiled src/riak_kv_crdt.erl
Compiled src/riak_kv_sup.erl
Compiled src/riak_kv_get_core.erl
Compiled src/riak_kv_vnode_status_mgr.erl
Compiled src/riak_kv_stat.erl
Compiled src/riak_kv_w1c_worker.erl
Compiled src/riak_kv_index_fsm_sup.erl
Compiled src/riak_kv_pncounter.erl
Compiled src/riak_kv_js_vm.erl
Compiled src/riak_kv_wm_timeseries.erl
Compiled src/riak_kv_entropy_info.erl
Compiled src/riak_kv_ensemble_console.erl
Compiled src/riak_kv_js_manager.erl
Compiled src/riak_kv_wm_buckets.erl
Compiled src/riak_kv_wm_bucket_type.erl
Compiled src/riak_kv_fsm_timing.erl
Compiled src/riak_kv_entropy_manager.erl
Compiled src/riak_client.erl
Compiled src/riak_kv_wm_object.erl
Compiled src/riak_kv_pb_ts.erl
Compiled src/riak_kv_buckets_fsm_sup.erl
Compiled src/riak_kv_gcounter.erl
Compiled src/riak_kv_wm_stats.erl
Compiled src/riak_kv_worker.erl
Compiled src/riak_kv_mapreduce.erl
Compiled src/riak_kv_yessir_backend.erl
Compiled src/riak_kv_wm_mapred.erl
Compiled src/riak_kv_ts_svc.erl
Compiled src/riak_kv_pb_bucket_key_apl.erl
Compiled src/riak_kv_http_cache.erl
Compiled src/riak_kv_mapred_filters.erl
Compiled src/riak_kv_ts_api.erl
Compiled src/riak_kv_multi_prefix_backend.erl
Compiled src/riak_kv_wm_index.erl
Compiled src/riak_kv_stat_worker.erl
Compiled src/riak_kv_w_reduce.erl
Compiled src/riak_kv_qry_sup.erl
Compiled src/riak_kv_put_core.erl
Compiled src/sms.erl
Compiled src/riak_kv_delete.erl
Compiled src/riak_kv_metadata_store_listener.erl
Compiled src/riak_kv_mapred_term.erl
Compiled src/riak_kv_encoding_migrate.erl
Compiled src/riak_kv_reformat.erl
Compiled src/riak_kv_pb_csbucket.erl
Compiled src/riak_kv_util.erl
Compiled src/riak_kv_legacy_vnode.erl
Compiled src/riak_kv_pb_counter.erl
Compiled src/riak_kv_eleveldb_backend.erl
Compiled src/riak_kv_wm_crdt.erl
Compiled src/riak_kv_pb_mapred.erl
Compiled src/json_pp.erl
Compiled src/riak_kv_qry_coverage_plan.erl
Compiled src/riak_kv_wm_timeseries_query.erl
Compiled src/riak_kv_wm_counter.erl
Compiled src/riak_kv_2i_aae.erl
Compiled src/riak_kv_ts_newtype.erl
Compiled src/riak_kv_compile_tab.erl
Compiled src/riak_kv_qry.erl
Compiled src/riak_kv_pb_crdt.erl
Compiled src/riak_kv_keys_fsm_sup.erl
Compiled src/riak_kv_buckets_fsm.erl
Compiled src/riak_kv_wm_timeseries_listkeys.erl
Compiled src/riak_kv_index_fsm.erl
Compiled src/riak_kv_app.erl
Compiled src/riak_kv_bitcask_backend.erl
Compiled src/riak_kv_ensembles.erl
Compiled src/riak_index.erl
Compiled src/riak_kv_wm_props.erl
Compiled src/riak_kv_wm_link_walker.erl
Compiled src/riak_kv_coverage_filter.erl
Compiled src/riak_kv_stat_bc.erl
Compiled src/riak_kv_pipe_listkeys.erl
Compiled src/riak_kv_index_hashtree.erl
Compiled src/riak.erl
Compiled src/riak_kv_status.erl
Compiled src/riak_kv_web.erl
Compiled src/riak_kv_backup.erl
Compiled src/riak_kv_pb_coverage.erl
Compiled src/riak_kv_keys_fsm.erl
Compiled src/riak_kv_get_fsm.erl
Compiled src/riak_kv_ts_sup.erl
Compiled src/riak_kv_mrc_map.erl
Compiled src/riak_kv_put_fsm.erl
Compiled src/riak_kv_wm_utils.erl
Compiled src/riak_kv_qry_buffers_ldb.erl
Compiled src/riak_kv_delete_sup.erl
Compiled src/riak_kv_crdt_json.erl
Compiled src/riak_kv_wm_keylist.erl
Compiled priv/tracers/tracer_func_args.erl
Compiled priv/tracers/tracer_accumulating_time.erl
Compiled priv/tracers/tracer_gc_latency.erl
Compiled priv/tracers/tracer_backend_latency.erl
Compiled priv/tracers/tracer_large4.erl
Compiled priv/tracers/tracer_fsm_init.erl
Compiled priv/tracers/tracer_timeit.erl
Compiled priv/tracers/tracer_eleveldb_put_size.erl
Compiled priv/tracers/tracer_read_bin_trace_file.erl
Compiled priv/tracers/tracer_latency_histogram.erl
Compiled priv/tracers/tracer_merge_and_and_handoff.erl
Compiled src/riak_kv_vnode.erl





✅ MAKE_TEST

Started at: 2017-01-26 12:00
Duration: 1060 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make test




  
  
... Snipped 509 lines ...
ror,true,true,false,false,true,true,true,false}
0.004% {true,true,error,true,true,false,false,true,false,true,false}
0.004% {true,true,error,true,true,false,false,false,true,true,false}
0.004% {true,true,error,true,true,false,false,false,false,true,false}
0.004% {true,true,error,true,false,false,false,true,true,true,true}
0.004% {true,true,error,true,false,false,false,false,false,true,false}
�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100)....................................................................................................(x1000)...........(x100)..(x10).......(x1)........
Time limit reached: 10.0 seconds.

OK, passed 22378 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m12:11:01.228 [info] Application lager started on node nonode@nohost
12:11:01.331 [info] Starting reporters with []
12:11:01.331 [info] Application exometer_core started on node nonode@nohost
....................................................................................................(x10)....................................................................................................(x100)....................................................................................................(x1000).........................(x100)...(x10)....(x1).....
Time limit reached: 60.0 seconds.

OK, passed 36445 tests
�[32m.�[0m12:12:01.612 [info] Application exometer_core exited with reason: stopped
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)..........
OK, passed 200 tests
�[32m.�[0mtest/rest_url_encoding_test.erl:43:<0.2549.0>: Skipping rest_url_encoding_test

test/rest_url_encoding_test.erl:43:<0.2549.0>: Skipping rest_url_encoding_test

�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m12:14:17.632 [info] Application lager started on node putfsmeqc546005461657@thumbs01
12:14:17.633 [info] Starting reporters with []
12:14:17.633 [info] Application exometer_core started on node putfsmeqc546005461657@thumbs01
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100)...................(x10).........(x1)...
Time limit reached: 60.0 seconds.

OK, passed 3093 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)..........................................................................................
OK, passed 1000 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)..........................................................................................
OK, passed 1000 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100)....................................................................................................(x1000).(x100).(x10)..(x1)......
Time limit reached: 10.0 seconds.

OK, passed 12226 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100)......................................(x10).......
Time limit reached: 5.0 seconds.

OK, passed 4970 tests
�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100).................(x10).........(x1).
Time limit reached: 5.0 seconds.

OK, passed 2891 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)..........................................................................................
OK, passed 1000 tests
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m....................................................................................................(x10)....................................................................................................(x100)..............................(x10).........(x1).......
Time limit reached: 60.0 seconds.

OK, passed 4197 tests

sibling_count
25.21% 0
15.27% 1
14.44% 2
11.41% 3
8.46% 4
6.74% 5
5.19% 6
3.57% 7
2.81% 8
1.81% 9
1.45% 10
1.17% 11
0.62% 12
0.55% 13
0.29% 16
0.29% 14
0.19% 15
0.12% 17
0.10% 23
0.10% 18
0.07% 22
0.05% 20
0.02% 29
0.02% 25
0.02% 21
0.02% 19

17.961% {riak_object_dvv_statem,get,4}
17.815% {riak_object_dvv_statem,replicate,4}
17.559% {riak_object_dvv_statem,put,4}
17.545% {riak_object_dvv_statem,get_put,7}
13.300% {riak_object_dvv_statem,update,5}
9.800% {riak_object_dvv_statem,make_ring,2}
6.020% {riak_object_dvv_statem,set_nr,1}
�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0m�[32m.�[0mtest/riak_kv_schema_tests.erl:424:<0.2549.0>: Supporting riak_core components not present, skipping job_class_enabled test
�[32m.�[0m
�[32m497 tests passed�[0m  �[30;1m(1041.75 s)�[0m





✅ MAKE_XREF

Started at: 2017-01-26 12:17
Duration: 12 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make xref




  ./rebar get-deps
==> sidejob (get-deps)
==> erlang_js (get-deps)
==> meck (get-deps)
==> getopt (get-deps)
==> goldrush (get-deps)
==> lager (get-deps)
==> neotoma (get-deps)
==> cuttlefish (get-deps)
==> bitcask (get-deps)
==> eper (get-deps)
==> edown (get-deps)
==> sext (get-deps)
==> poolboy (get-deps)
==> basho_stats (get-deps)
==> riak_sysmon (get-deps)
==> msgpack (get-deps)
==> eleveldb (get-deps)
==> riak_ensemble (get-deps)
==> pbkdf2 (get-deps)
==> parse_trans (get-deps)
==> bear (get-deps)
==> folsom (get-deps)
==> setup (get-deps)
==> src (get-deps)
==> exometer_core (get-deps)
==> jam (get-deps)
==> clique (get-deps)
==> riak_core (get-deps)
==> riak_pipe (get-deps)
==> protobuffs (get-deps)
==> hamcrest (get-deps)
==> riak_pb (get-deps)
==> mochiweb (get-deps)
==> webmachine (get-deps)
==> riak_api (get-deps)
==> riak_dt (get-deps)
==> color (get-deps)
==> tdiff (get-deps)
==> unite (get-deps)
==> merl (get-deps)
==> riak_ql (get-deps)
==> eunit_formatters (get-deps)
==> proper (get-deps)
==> stdlib2 (get-deps)
==> hyper (get-deps)
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (get-deps)
./rebar compile
==> sidejob (compile)
==> erlang_js (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/erlang_js'
cd c_src; make
make[2]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/erlang_js/c_src'
make[2]: Nothing to be done for `js'.
make[2]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/erlang_js/c_src'
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/erlang_js'
==> meck (compile)
==> getopt (compile)
==> goldrush (compile)
==> lager (compile)
==> neotoma (compile)
==> cuttlefish (compile)
==> getopt (escriptize)
==> goldrush (escriptize)
==> lager (escriptize)
==> neotoma (escriptize)
==> cuttlefish (escriptize)
==> bitcask (compile)
==> eper (compile)
==> edown (compile)
==> sext (compile)
==> poolboy (compile)
==> basho_stats (compile)
==> riak_sysmon (compile)
==> msgpack (compile)
==> eleveldb (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/eleveldb/c_src/leveldb'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/eleveldb/c_src/leveldb'
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/eleveldb/c_src/leveldb'
make[1]: Nothing to be done for `tools'.
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/eleveldb/c_src/leveldb'
==> riak_ensemble (compile)
==> pbkdf2 (compile)
==> parse_trans (compile)
==> bear (compile)
==> folsom (compile)
==> setup (compile)
==> edown (escriptize)
==> setup (escriptize)
==> src (compile)
==> exometer_core (compile)
==> jam (compile)
==> clique (compile)
==> riak_core (compile)
==> riak_pipe (compile)
==> protobuffs (pre_compile)
==> protobuffs (compile)
==> hamcrest (pre_compile)
==> hamcrest (compile)
==> hamcrest (post_compile)
==> riak_pb (pre_compile)
==> riak_pb (compile)
==> mochiweb (compile)
==> webmachine (compile)
==> riak_api (compile)
==> riak_dt (compile)
==> color (compile)
==> tdiff (compile)
==> unite (compile)
==> merl (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/merl'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/merl'
==> riak_ql (compile)
==> eunit_formatters (compile)
==> proper (compile)
make[1]: Entering directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper'
make[1]: `include/compile_flags.hrl' is up to date.
make[1]: Leaving directory `/tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/proper'
==> stdlib2 (compile)
==> hyper (compile)
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (compile)
./rebar xref skip_deps=true
WARN:  Ignoring sub_dirs for /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180/deps/exometer_core
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (xref)





✅ MAKE_DIALYZER

Started at: 2017-01-26 12:18
Duration: 65 seconds.
Result: OK
Message: OK
Exit Code: 0

📄


cd /tmp/thumbs/riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180; make dialyzer




  
  
... Snipped 674 lines ...
tension/1
  filename:join/1
  filename:join/2
  filename:rootname/2
  filename:split/1
  gb_sets:add/2
  gb_sets:add_element/2
  gb_sets:balance/1
  gb_sets:del_element/2
  gb_sets:delete/2
  gb_sets:delete_any/2
  gb_sets:difference/2
  gb_sets:empty/0
  gb_sets:filter/2
  gb_sets:fold/3
  gb_sets:from_list/1
  gb_sets:from_ordset/1
  gb_sets:insert/2
  gb_sets:intersection/1
  gb_sets:intersection/2
  gb_sets:is_disjoint/2
  gb_sets:is_element/2
  gb_sets:is_empty/1
  gb_sets:is_member/2
  gb_sets:is_set/1
  gb_sets:is_subset/2
  gb_sets:iterator/1
  gb_sets:largest/1
  gb_sets:new/0
  gb_sets:next/1
  gb_sets:singleton/1
  gb_sets:size/1
  gb_sets:smallest/1
  gb_sets:subtract/2
  gb_sets:take_largest/1
  gb_sets:take_smallest/1
  gb_sets:to_list/1
  gb_sets:union/1
  gb_sets:union/2
  gb_trees:balance/1
  gb_trees:delete/2
  gb_trees:delete_any/2
  gb_trees:empty/0
  gb_trees:enter/3
  gb_trees:from_orddict/1
  gb_trees:get/2
  gb_trees:insert/3
  gb_trees:is_defined/2
  gb_trees:is_empty/1
  gb_trees:iterator/1
  gb_trees:keys/1
  gb_trees:largest/1
  gb_trees:lookup/2
  gb_trees:map/2
  gb_trees:next/1
  gb_trees:size/1
  gb_trees:smallest/1
  gb_trees:take_largest/1
  gb_trees:take_smallest/1
  gb_trees:to_list/1
  gb_trees:update/3
  gb_trees:values/1
  gen:call/3
  gen:call/4
  gen:reply/2
  gen:start/5
  gen:start/6
  gen_event:add_handler/3
  gen_event:add_sup_handler/3
  gen_event:call/3
  gen_event:call/4
  gen_event:delete_handler/3
  gen_event:notify/2
  gen_event:start_link/1
  gen_event:swap_handler/3
  gen_event:sync_notify/2
  gen_event:which_handlers/1
  gen_fsm:cancel_timer/1
  gen_fsm:reply/2
  gen_fsm:send_all_state_event/2
  gen_fsm:send_event/2
  gen_fsm:send_event_after/2
  gen_fsm:start/3
  gen_fsm:start_link/3
  gen_fsm:start_timer/2
  gen_fsm:sync_send_all_state_event/2
  gen_fsm:sync_send_all_state_event/3
  gen_fsm:sync_send_event/2
  gen_fsm:sync_send_event/3
  gen_server:abcast/3
  gen_server:call/2
  gen_server:call/3
  gen_server:cast/2
  gen_server:reply/2
  gen_server:start/3
  gen_server:start/4
  gen_server:start_link/3
  gen_server:start_link/4
  gen_tcp:accept/1
  gen_tcp:accept/2
  gen_tcp:close/1
  gen_tcp:connect/4
  gen_tcp:controlling_process/2
  gen_tcp:listen/2
  gen_tcp:recv/3
  gen_tcp:send/2
  gen_udp:close/1
  gen_udp:open/2
  gen_udp:send/4
  global:send/2
  global:unregister_name/1
  global:whereis_name/1
  httpc:request/4
  httpd_util:convert_request_date/1
  httpd_util:day/1
  httpd_util:month/1
  httpd_util:reason_phrase/1
  httpd_util:rfc1123_date/0
  httpd_util:rfc1123_date/1
  igor:parse_transform/2
  inet:getaddr/2
  inet:gethostbyaddr/1
  inet:gethostbyname/1
  inet:gethostname/0
  inet:getopts/2
  inet:getstat/1
  inet:getstat/2
  inet:parse_address/1
  inet:peername/1
  inet:port/1
  inet:setopts/2
  inet:sockname/1
  inet_db:register_socket/2
  inet_parse:address/1
  inet_parse:ntoa/1
  inets:start/0
  init:archive_extension/0
  init:get_argument/1
  init:get_status/0
  init:script_id/0
  init:stop/0
  init:stop/1
  io:columns/0
  io:format/1
  io:format/2
  io:format/3
  io:fwrite/1
  io:fwrite/2
  io:fwrite/3
  io:nl/0
  io:put_chars/1
  io:put_chars/2
  io:request/2
  io:write/1
  io_lib:deep_char_list/1
  io_lib:format/2
  io_lib:fread/2
  io_lib:fwrite/2
  io_lib:printable_list/1
  io_lib:write/1
  io_lib:write/2
  io_lib:write_atom/1
  io_lib:write_char/1
  io_lib:write_string/1
  io_lib_format:fwrite_g/1
  io_lib_pretty:print/4
  io_lib_pretty:print/6
  lager_default_tracer:info/1
  lib:format_exception/6
  lists:append/1
  lists:concat/1
  lists:duplicate/2
  lists:filtermap/2
  lists:flatlength/1
  lists:flatten/2
  lists:keystore/4
  lists:keytake/3
  lists:merge/1
  lists:prefix/2
  lists:seq/2
  lists:seq/3
  lists:sublist/2
  lists:sublist/3
  lists:sum/1
  lists:ukeymerge/3
  lists:ukeysort/2
  lists:umerge/2
  maps:to_list/1
  math:cos/1
  math:exp/1
  math:log/1
  math:log10/1
  math:pi/0
  math:pow/2
  math:sqrt/1
  memsup:get_system_memory_data/0
  mnesia:system_info/1
  mnesia:table_info/2
  mnesia_tm:get_info/1
  mustache:render/2
  net_adm:names/1
  net_adm:ping/1
  net_kernel:get_net_ticktime/0
  net_kernel:hidden_connect_node/1
  net_kernel:monitor_nodes/1
  net_kernel:monitor_nodes/2
  net_kernel:set_net_ticktime/1
  net_kernel:start/1
  orddict:append/3
  orddict:append_list/3
  orddict:erase/2
  orddict:fetch/2
  orddict:fetch_keys/1
  orddict:filter/2
  orddict:find/2
  orddict:fold/3
  orddict:from_list/1
  orddict:is_key/2
  orddict:map/2
  orddict:merge/3
  orddict:new/0
  orddict:size/1
  orddict:store/3
  orddict:to_list/1
  orddict:update/3
  orddict:update/4
  orddict:update_counter/3
  ordsets:add_element/2
  ordsets:del_element/2
  ordsets:filter/2
  ordsets:fold/3
  ordsets:from_list/1
  ordsets:intersection/1
  ordsets:intersection/2
  ordsets:is_disjoint/2
  ordsets:is_element/2
  ordsets:is_set/1
  ordsets:is_subset/2
  ordsets:new/0
  ordsets:size/1
  ordsets:subtract/2
  ordsets:to_list/1
  ordsets:union/1
  ordsets:union/2
  os:cmd/1
  os:getenv/1
  os:getpid/0
  os:timestamp/0
  os:type/0
  prim_file:list_dir/2
  prim_file:read_file_info/1
  prim_file:write_file_info/2
  prim_inet:async_accept/2
  prim_inet:getstatus/1
  prim_inet:gettype/1
  proc_lib:hibernate/3
  proc_lib:init_ack/2
  proc_lib:spawn/1
  proc_lib:spawn_link/1
  proc_lib:spawn_link/3
  proc_lib:start_link/3
  proc_lib:translate_initial_call/1
  proplists:delete/2
  proplists:get_all_values/2
  proplists:get_bool/2
  proplists:get_keys/1
  proplists:get_value/2
  proplists:get_value/3
  proplists:is_defined/2
  proplists:lookup/2
  proplists:substitute_aliases/2
  proplists:unfold/1
  pubkey_cert:extensions_list/1
  pubkey_cert:select_extension/2
  pubkey_cert_records:transform/2
  public_key:pem_decode/1
  public_key:pem_entry_decode/1
  public_key:pkix_crls_validate/3
  public_key:pkix_decode_cert/2
  public_key:pkix_encode/3
  public_key:pkix_is_self_signed/1
  public_key:pkix_normalize_name/1
  queue:cons/2
  queue:daeh/1
  queue:drop/1
  queue:drop_r/1
  queue:filter/2
  queue:from_list/1
  queue:get/1
  queue:get_r/1
  queue:head/1
  queue:in/2
  queue:in_r/2
  queue:init/1
  queue:is_empty/1
  queue:is_queue/1
  queue:join/2
  queue:last/1
  queue:len/1
  queue:liat/1
  queue:member/2
  queue:new/0
  queue:out/1
  queue:out_r/1
  queue:peek/1
  queue:peek_r/1
  queue:reverse/1
  queue:snoc/2
  queue:split/2
  queue:tail/1
  queue:to_list/1
  random:seed/0
  random:seed/1
  random:seed/3
  random:seed0/0
  random:uniform/0
  random:uniform/1
  random:uniform_s/2
  re:compile/1
  re:compile/2
  re:replace/4
  re:run/2
  re:run/3
  re:split/2
  re:split/3
  rebar_config:get_local/3
  rebar_mustache:render/2
  rebar_rel_utils:get_target_dir/2
  rebar_rel_utils:is_rel_dir/0
  rebar_rel_utils:load_config/2
  release_handler:eval_appup_script/4
  rpc:call/4
  rpc:call/5
  rpc:eval_everywhere/3
  rpc:multicall/3
  rpc:multicall/4
  rpc:multicall/5
  sets:add_element/2
  sets:del_element/2
  sets:filter/2
  sets:fold/3
  sets:from_list/1
  sets:intersection/1
  sets:intersection/2
  sets:is_disjoint/2
  sets:is_element/2
  sets:is_set/1
  sets:is_subset/2
  sets:new/0
  sets:size/1
  sets:subtract/2
  sets:to_list/1
  sets:union/1
  sets:union/2
  ssl:close/1
  ssl:connect/2
  ssl:connect/4
  ssl:listen/2
  ssl:peercert/1
  ssl:peername/1
  ssl:recv/3
  ssl:send/2
  ssl:setopts/2
  ssl:sockname/1
  ssl:ssl_accept/1
  ssl:ssl_accept/2
  ssl:ssl_accept/3
  ssl:transport_accept/1
  ssl_cipher:openssl_suite/1
  ssl_cipher:openssl_suite_name/1
  string:centre/2
  string:centre/3
  string:chr/2
  string:cspan/2
  string:equal/2
  string:join/2
  string:left/2
  string:left/3
  string:len/1
  string:rchr/2
  string:right/2
  string:right/3
  string:str/2
  string:strip/1
  string:strip/2
  string:strip/3
  string:sub_string/2
  string:sub_string/3
  string:substr/2
  string:substr/3
  string:to_float/1
  string:to_integer/1
  string:to_lower/1
  string:to_upper/1
  string:tokens/2
  supervisor:count_children/1
  supervisor:delete_child/2
  supervisor:start_child/2
  supervisor:start_link/2
  supervisor:start_link/3
  supervisor:terminate_child/2
  supervisor:which_children/1
  sys:debug_options/1
  sys:get_debug/3
  sys:handle_debug/4
  sys:handle_system_msg/6
  sys:print_log/1
  systools:make_script/2
  timer:apply_after/4
  timer:apply_interval/4
  timer:cancel/1
  timer:minutes/1
  timer:now_diff/2
  timer:seconds/1
  timer:send_after/2
  timer:send_interval/2
  timer:sleep/1
  timer:tc/1
  timer:tc/2
  timer:tc/3
  unicode:characters_to_binary/1
  unicode:characters_to_binary/3
  unicode:characters_to_list/1
  unicode:characters_to_list/2
  xmerl:export_simple/2
  xmerl_html:'#element#'/5
  xmerl_lib:end_tag/1
  xmerl_lib:expand_element/1
  xmerl_lib:find_attribute/2
  xmerl_lib:mapxml/2
  xmerl_lib:start_tag/2
  xmerl_ucs:from_utf16be/1
  xmerl_ucs:from_utf8/1
  xmerl_ucs:to_utf8/1
  zlib:gunzip/1
  zlib:gzip/1
Unknown types:
  calendar:datetime/0
  compile:option/0
  dets:tab_name/0
  erl_parse:abstract_clause/0
  erl_parse:abstract_expr/0
  erl_parse:abstract_form/0
  erl_scan:line/0
  erl_scan:location/0
  erl_syntax:syntaxTree/0
  erlang:timestamp/0
  ets:comp_match_spec/0
  ets:match_spec/0
  ets:tab/0
  ets:tid/0
  file:date_time/0
  file:fd/0
  file:filename/0
  file:io_device/0
  file:name/0
  file:name_all/0
  file:posix/0
  gen_tcp:listen_option/0
  gen_tcp:option/0
  inet:hostname/0
  inet:ip4_address/0
  inet:ip6_address/0
  inet:ip_address/0
  inet:socket/0
  io:device/0
  io:format/0
  meck_history:history_record/0
  msgpack:msgpack_map_jiffy/0
  msgpack:msgpack_map_jsx/0
  orddict:orddict/0
  ordsets:ordset/1
  proplists:property/0
  proplists:proplist/0
  re:mp/0
  ssl:ssl_option/0
  ssl:sslsocket/0
  supervisor:child_spec/0
  supervisor:strategy/0
  timer:tref/0
  unicode:charlist/0
 done in 0m19.30s
done (passed successfully)
==> riak_ts-integration-1.5.2.dfb1509.fix-az-correct_orderby_sorting_wrt_nulls.480d180 (dialyzer)





⬜ 0 of 2 Code reviews from organization basho

@DSomogyi
Copy link

create jira issue

@Basho-JIRA Basho-JIRA changed the title correct sorting order wrt nulls first/last spec correct sorting order wrt nulls first/last spec [JIRA: RIAK-3209] Jan 26, 2017
@Basho-JIRA Basho-JIRA assigned hmmr and unassigned hazen Jan 26, 2017
@hazen
Copy link

hazen commented Jan 26, 2017

👍

1 similar comment
@paegun
Copy link

paegun commented Jan 26, 2017

+1

@thumbot
Copy link

thumbot commented Jan 26, 2017

✅ 2 of 2 Code reviews from organization basho

@thumbot
Copy link

thumbot commented Jan 26, 2017

Merging and closing this pr

@thumbot thumbot merged commit 80bce7e into riak_ts-integration-1.5.2 Jan 26, 2017
@thumbot
Copy link

thumbot commented Jan 26, 2017

Successfully merged basho/riak_kv/pulls/1618 (480d180 on to riak_ts-integration-1.5.2)

---
:sha: 80bce7e4736598c3a2d6b6b0e26ab29eb76601e0
:merged: true
:message: Pull Request successfully merged

@hmmr hmmr deleted the fix-az-correct_orderby_sorting_wrt_nulls branch January 27, 2017 00:56
thumbot pushed a commit that referenced this pull request Feb 24, 2017
* fix for CREATE TABLE, removing the delta between how the request is serviced between HTTP and PB and RPC. fix for CREATE TABLE, removing the delta between the post-condition of CREATE TABLE (was active bucket-type only) and "query-ready" (is bucket-type active, DDL module compiled and min capability met throughout the ring).
* removed wait_until_supported/4 from CREATE TABLE post-condition ensurance b/c the DDL is surely the version supported.
* moved create_table unified logic to riak_kv_ts_api instead of riak_kv_ts_util.
* (STILL FAILING) added recommended check around the ring of active nodes to ensure the DDL module is compiled as a postcondition of CREATE TABLE.
* change to include the node in getting table ready state, including a change to rpc:multicall over sequential rpc:call.
* Lock deps for riak_ts-1.5.0
* changed INSERT postcondition check to match the precondition of INSERT, riak_kv_ts_util:is_table_supported/2.
* changed retry delay on CREATE TABLE postcondition assurance to 200ms. corrected error formats involving table to be unicode friendly.
* Set deps to riak_ts-1.5.1a
* added documentation of the table creation flow w/i a general outline for explaining tables and records to distinguish how Riak TS stores these inherently different types of objects.
* Unify how CREATE TABLE is serviced and ensure table is query-ready [JIRA: RIAK-3173] (#1577)

* fix for CREATE TABLE, removing the delta between how the request is serviced between HTTP and PB and RPC. fix for CREATE TABLE, removing the delta between the post-condition of CREATE TABLE (was active bucket-type only) and "query-ready" (is bucket-type active, DDL module compiled and min capability met throughout the ring).
* removed wait_until_supported/4 from CREATE TABLE post-condition ensurance b/c the DDL is surely the version supported.
* moved create_table unified logic to riak_kv_ts_api instead of riak_kv_ts_util.
* (STILL FAILING) added recommended check around the ring of active nodes to ensure the DDL module is compiled as a postcondition of CREATE TABLE.
* change to include the node in getting table ready state, including a change to rpc:multicall over sequential rpc:call.
* changed INSERT postcondition check to match the precondition of INSERT, riak_kv_ts_util:is_table_supported/2.
* changed retry delay on CREATE TABLE postcondition assurance to 200ms. corrected error formats involving table to be unicode friendly.
* Set deps to riak_ts-1.5.1b
* Set deps to riak_ts-1.5.1
* Set deps to riak_ts-integration-1.5.2
* qry_buffers: correct sorting order wrt nulls first/last spec (#1618)

* qry_buffers: correct sorting order wrt nulls first/last spec
* fix projected query size calculation for queries with LIMIT [JIRA: RIAK-3210] (#1619)

* qry_worker: fix max query size check w/ LIMIT
* qry_worker: more accurate lager message for large query cancellation
* properly estimate query size for aggregate queries [JIRA: RIAK-3225] (#1622)

* skip estimate_query_size for aggregate qries, properly do for group_by ones
* "from the arrival of the second result set" means "< 2" was correct
* test estimate_query_size for #state.n_subqueries_done < 2, and >= 2
* simplify estimate_query_size_limit_applies_to_regular_queries_test

and add some parens for clarity
* don't check projected query size on receipt of last chunk
* Merge branch 'riak_ts-integration-1.5.2' into riak_ts-develop-1.5
* Merge branch 'riak_ts-develop-1.5' into jg-factor-down-servicing-create-table-doc
* addressed review guidance wrt documentation run ons and the like.
* for Riak TS tabular buckets doc: split up run on first sentence. addressed suggestion s/focused/serialized/ for Riak Core Claimant purpose in the CREATE TABLE flow. addressed suggestion s/labeled/implemented as/ for whether to be EC or SC.
* changed base branch.
hmmr added a commit to TI-Tokyo/riak_kv that referenced this pull request Jan 13, 2022
)

* qry_buffers: correct sorting order wrt nulls first/last spec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants