Has anyone taken a look at this? I'm concerned that spaces and special
characters in secondary indexes are inconsistent.
Thanks,
Paul
On 7/20/12 5:12 PM, Paul Gross wrote:
I'm seeing different results when performing a 2i query with spaces on
different platforms. On OS X, I find the object. On an ubuntu vagrant
image used by Travis CI, I do not.
For example, here is my test script:
require 'riak'
client = Riak::Client.new
bucket = client.bucket("test")
bucket.keys.each { |k| bucket.delete(k) }
object = ::Riak::RObject.new(bucket, "key")
object.content_type = "text/plain"
object.data = "hello"
object.indexes = {"with_space_bin" => "with space",
"without_space_bin" => "without_space"}
object.store
puts "Found with space" if bucket.get_index("with_space_bin",
"with space").any?
puts "Found without space" if
bucket.get_index("without_space_bin", "without_space").any?
When I connect to the riak on OS X, it prints both found with space
and found without. When I connect to the riak running on ubuntu, it
only prints found without space. I'm running the ruby code from my mac
both times, so the client library is exactly the same (riak-client
1.0.4). Is there a difference in the way riak handles spaces on
different platforms? Possibly a difference in erlang versions? Both
riaks are 1.1.2.
Here are the stats on my mac:
% curl localhost:8098/stats
{"vnode_gets":408,"vnode_puts":195,"vnode_index_reads":638,"vnode_index_writes":195,"vnode_index_writes_postings":234,"vnode_index_deletes":63,"vnode_index_deletes_postings":225,"read_repairs":0,"vnode_gets_total":408,"vnode_puts_total":195,"vnode_index_reads_total":638,"vnode_index_writes_total":195,"vnode_index_writes_postings_total":234,"vnode_index_deletes_total":63,"vnode_index_deletes_postings_total":225,"node_gets":0,"node_gets_total":136,"node_get_fsm_time_mean":0,"node_get_fsm_time_median":0,"node_get_fsm_time_95":0,"node_get_fsm_time_99":0,"node_get_fsm_time_100":0,"node_puts":0,"node_puts_total":65,"node_put_fsm_time_mean":0,"node_put_fsm_time_median":0,"node_put_fsm_time_95":0,"node_put_fsm_time_99":0,"node_put_fsm_time_100":0,"node_get_fsm_siblings_mean":0,"node_get_fsm_siblings_median":0,"node_get_fsm_siblings_95":0,"node_get_fsm_siblings_99":0,"node_get_fsm_siblings_100":0,"node_get_fsm_objsize_mean":0,"node_get_fsm_objsize_median":0,"node_get_fsm_objsize_95":0,"nod
e_get_fsm_objsize_99":0,"node_get_fsm_objsize_100":0,"read_repairs_total":0,"coord_redirs_total":0,"precommit_fail":0,"postcommit_fail":0,"cpu_nprocs":141,"cpu_avg1":392,"cpu_avg5":387,"cpu_avg15":384,"mem_total":4174500000,"mem_allocated":4159748000,"nodename":"[email protected]","connected_nodes":[],"sys_driver_version":"1.5","sys_global_heaps_size":0,"sys_heap_type":"private","sys_logical_processors":4,"sys_otp_release":"R14B04","sys_process_count":1359,"sys_smp_support":true,"sys_system_version":"Erlang
R14B04 (erts-5.8.5) [source] [64-bit] [smp:4:4] [rq:4]
[async-threads:64] [hipe]
[kernel-poll:true]","sys_system_architecture":"i386-apple-darwin11.2.0","sys_threads_enabled":true,"sys_thread_pool_size":64,"sys_wordsize":8,"ring_members":["[email protected]"],"ring_num_partitions":64,"ring_ownership":"[{'[email protected]',64}]","ring_creation_size":64,"storage_backend":"riak_kv_eleveldb_backend","pbc_connects_total":0,"pbc_connects":0,"pbc_active":0,"ssl_version":"4.1.6","public_key_version":"0.13","runtime_tools_version":"1.8.6","basho_stats_version":"1.0.2","riak_search_version":"1.1.2","riak_kv_version":"1.1.2","bitcask_version":"1.5.1","luke_version":"0.2.5","erlang_js_version":"1.0.2","mochiweb_version":"1.5.1","inets_version":"5.7.1","riak_pipe_version":"1.1.2","merge_index_version":"1.1.0","cluster_info_version":"1.2.1","basho_metrics_version":"1.0.0","riak_control_version":"0.1.0","riak_core_version":"1.1.2","lager_version
":"1.0.0","riak_sysmon_version":"1.1.2","webmachine_version":"1.9.1","crypto_version":"2.0.4","os_mon_version":"2.2.7","sasl_version":"2.1.10","stdlib_version":"1.17.5","kernel_version":"2.14.5","executing_mappers":0,"memory_total":24676960,"memory_processes":9487312,"memory_processes_used":9466216,"memory_system":15189648,"memory_atom":1032393,"memory_atom_used":1008563,"memory_binary":509904,"memory_code":9056222,"memory_ets":831328,"ignored_gossip_total":0,"rings_reconciled_total":0,"rings_reconciled":0,"gossip_received":0,"handoff_timeouts":0,"converge_delay_min":"undefined","converge_delay_max":-1,"converge_delay_mean":0,"converge_delay_last":"undefined","rebalance_delay_min":"undefined","rebalance_delay_max":-1,"rebalance_delay_mean":0,"rebalance_delay_last":"undefined","riak_kv_vnodes_running":64,"riak_kv_vnodeq_min":0,"riak_kv_vnodeq_median":0,"riak_kv_vnodeq_mean":0,"riak_kv_vnodeq_max":0,"riak_kv_vnodeq_total":0,"riak_pipe_vnodes_running":64,"riak_pipe_vnodeq_min":0,"riak_pi
pe_vnodeq_median":0,"riak_pipe_vnodeq_mean":0,"riak_pipe_vnodeq_max":0,"riak_pipe_vnodeq_total":0}
And here are the stats on ubuntu:
$ curl localhost:8098/stats
{"vnode_gets":465,"vnode_puts":219,"vnode_index_reads":572,"vnode_index_writes":219,"vnode_index_writes_postings":234,"vnode_index_deletes":72,"vnode_index_deletes_postings":234,"read_repairs":0,"vnode_gets_total":2433,"vnode_puts_total":1161,"vnode_index_reads_total":3498,"vnode_index_writes_total":1161,"vnode_index_writes_postings_total":1212,"vnode_index_deletes_total":360,"vnode_index_deletes_postings_total":1206,"node_gets":0,"node_gets_total":811,"node_get_fsm_time_mean":0,"node_get_fsm_time_median":0,"node_get_fsm_time_95":0,"node_get_fsm_time_99":0,"node_get_fsm_time_100":0,"node_puts":0,"node_puts_total":387,"node_put_fsm_time_mean":0,"node_put_fsm_time_median":0,"node_put_fsm_time_95":0,"node_put_fsm_time_99":0,"node_put_fsm_time_100":0,"node_get_fsm_siblings_mean":0,"node_get_fsm_siblings_median":0,"node_get_fsm_siblings_95":0,"node_get_fsm_siblings_99":0,"node_get_fsm_siblings_100":0,"node_get_fsm_objsize_mean":0,"node_get_fsm_objsize_median":0,"node_get_fsm_objsize_95
":0,"node_get_fsm_objsize_99":0,"node_get_fsm_objsize_100":0,"read_repairs_total":0,"coord_redirs_total":0,"precommit_fail":0,"postcommit_fail":0,"cpu_nprocs":334,"cpu_avg1":0,"cpu_avg5":3,"cpu_avg15":3,"mem_total":1050632192,"mem_allocated":607707136,"nodename":"[email protected]","connected_nodes":[],"sys_driver_version":"1.5","sys_global_heaps_size":0,"sys_heap_type":"private","sys_logical_processors":2,"sys_otp_release":"R14B04","sys_process_count":1557,"sys_smp_support":true,"sys_system_version":"Erlang
R14B04 (erts-5.8.5) [source] [smp:2:2] [rq:2] [async-threads:64]
[kernel-poll:true]","sys_system_architecture":"i686-pc-linux-gnu","sys_threads_enabled":true,"sys_thread_pool_size":64,"sys_wordsize":4,"ring_members":["[email protected]"],"ring_num_partitions":64,"ring_ownership":"[{'[email protected]',64}]","ring_creation_size":64,"storage_backend":"riak_kv_eleveldb_backend","pbc_connects_total":0,"pbc_connects":0,"pbc_active":0,"ssl_version":"4.1.6","public_key_version":"0.13","runtime_tools_version":"1.8.6","basho_stats_version":"1.0.2","riak_search_version":"1.1.2","riak_kv_version":"1.1.2","bitcask_version":"1.5.1","luke_version":"0.2.5","erlang_js_version":"1.0.2","mochiweb_version":"1.5.1","inets_version":"5.7.1","riak_pipe_version":"1.1.2","merge_index_version":"1.1.0","cluster_info_version":"1.2.1","basho_metrics_version":"1.0.0","riak_control_version":"0.1.0","riak_core_version":"1.1.2","lager_version":"1.0
.0","riak_sysmon_version":"1.1.2","webmachine_version":"1.9.1","crypto_version":"2.0.4","os_mon_version":"2.2.7","sasl_version":"2.1.10","stdlib_version":"1.17.5","kernel_version":"2.14.5","executing_mappers":0,"memory_total":14504136,"memory_processes":6056540,"memory_processes_used":6043068,"memory_system":8447596,"memory_atom":693009,"memory_atom_used":674176,"memory_binary":446456,"memory_code":4876533,"memory_ets":430264,"ignored_gossip_total":0,"rings_reconciled_total":0,"rings_reconciled":0,"gossip_received":0,"handoff_timeouts":0,"converge_delay_min":"undefined","converge_delay_max":-1,"converge_delay_mean":0,"converge_delay_last":"undefined","rebalance_delay_min":"undefined","rebalance_delay_max":-1,"rebalance_delay_mean":0,"rebalance_delay_last":"undefined","riak_kv_vnodes_running":64,"riak_kv_vnodeq_min":0,"riak_kv_vnodeq_median":0,"riak_kv_vnodeq_mean":0,"riak_kv_vnodeq_max":0,"riak_kv_vnodeq_total":0,"riak_pipe_vnodes_running":64,"riak_pipe_vnodeq_min":0,"riak_pipe_vnodeq
_median":0,"riak_pipe_vnodeq_mean":0,"riak_pipe_vnodeq_max":0,"riak_pipe_vnodeq_total":0,"riak_search_vnodes_running":64,"riak_search_vnodeq_min":0,"riak_search_vnodeq_median":0,"riak_search_vnodeq_mean":0,"riak_search_vnodeq_max":0,"riak_search_vnodeq_total":0}
These failures are reliable, so I can gather any extra data you'd like.
For context, these differences are breaking the curator build on
Travis CI. The tests run fine locally, but break on the build server:
http://travis-ci.org/#!/braintree/curator/jobs/1770794
Thanks,
Paul
www.pgrs.net
_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com