Skip to content

Instantly share code, notes, and snippets.

alexmoore / 0. Riak on Raspberry Pi's
Last active November 18, 2021 09:39
Building Basho Erlang / Riak TS on a Raspberry Pi 3
This is unsupported by Basho, but you can build Basho's flavor of Erlang and Riak on Raspberry Pis.
alexmoore /
Created September 27, 2016 20:17 — forked from acolyer/
Internet Scale Services Checklist

Internet Scale Services Checklist

A checklist for designing and developing internet scale services, inspired by James Hamilton's 2007 paper "On Desgining and Deploying Internet-Scale Services."

Basic tenets

  • Does the design expect failures to happen regularly and handle them gracefully?
  • Have we kept things as simple as possible?
Just Open a Socket -
package Blah;
import java.util.Iterator;
import java.util.NoSuchElementException;
public class SelectManyIterable<TSource, TResult> implements Iterable<TResult>
public interface TransformProvider<TSource, TResult>
alexmoore /
Created September 25, 2014 19:05
Find large Objects
# For each node, search for reading large object messages, write to file
for NODE in 10.58.9*; do
IP=`echo "$NODE" | cut -d '-' -f1`;
cat $NODE/lo.r.console.log | sed "s/.*Reading large object of size \([0-9]*\) from \(<<.*>>\)\/\(<<.*>>\)/\{\"$IP\",\2,\3,\1\},/" | sort | uniq > $NODE/lo.r.list ;
# For each node, search for writing large object messages, write to largeobject.write file
for NODE in 10.58.9*;
FindPrimaries = fun(Bucket, Key, Ring) ->
BKey = {Bucket,Key},
DocIdx = riak_core_util:chash_key(BKey),
BucketProps = riak_core_bucket:get_bucket(Bucket, Ring),
[NValue] = [Y || {X1, Y} <- BucketProps, n_val == X1],
CHBin = chashbin:create(riak_core_ring:chash(Ring)),
Itr = chashbin:iterator(DocIdx, CHBin),
{Primaries, Itr2} = chashbin:itr_pop(3, Itr),
alexmoore / set_lager.erl
Created May 6, 2014 16:13
Set Debug / Info Log Levels Riak-CS
SetDebug = fun() -> {node(), lager:set_loglevel(lager_file_backend, "/var/log/riak-cs/console.log", debug)} end.
SetInfo = fun() -> {node(), lager:set_loglevel(lager_file_backend, "/var/log/riak-cs/console.log", info)} end.
rp(rpc:multicall(erlang, apply, [SetInfo,[]])).
alexmoore /
Created April 15, 2014 03:07

Keybase proof

I hereby claim:

  • I am alexmoore on github.
  • I am alexmoore ( on keybase.
  • I have a public key whose fingerprint is ED5D 175E 29A7 478F 0D4F 7D57 1D71 6D67 A969 0E08

To claim this, I am signing this object:

unpack_riak_debugs () {
mkdir -p compressed
for file in `ls *riak-debug.tar.gz`
tar xzf $file
mv $file compressed
for file in `ls -1 | grep riak-debug`