Skip to content

Instantly share code, notes, and snippets.

@shino
Created April 27, 2015 14:15
Show Gist options
  • Save shino/2e2bdf70320378e17496 to your computer and use it in GitHub Desktop.
Save shino/2e2bdf70320378e17496 to your computer and use it in GitHub Desktop.
% dev/dev1/bin/riak-cs escript $PWD/priv/tools/internal/select_gc_bucket.erl \
     -p 10017 -r 8 --to today 
% wc -l /tmp/tmp.txt
114 /tmp/tmp.txt
% head /tmp/tmp.txt
0       182687704666362864775460604089535377456991567872        365375409332725729550921208179070754913983135744                30623a098f6bcd4621d373cade4e832627b4f6  0df4ee08d2fa4f8f834be72af751758000000000 0df4ee08d2fa4f8f834be72af7517580        0
913438523331814323877303020447676887284957839360        1096126227998177188652763624537212264741949407232       1278813932664540053428224228626747642198940975104       30623a098f6bcd4621d373cade4e832627b4f6   0df4ee08d2fa4f8f834be72af751758000000001        0df4ee08d2fa4f8f834be72af7517580        1
182687704666362864775460604089535377456991567872        365375409332725729550921208179070754913983135744        548063113999088594326381812268606132370974703616        30623a098f6bcd4621d373cade4e832627b4f6   0df4ee08d2fa4f8f834be72af751758000000002        0df4ee08d2fa4f8f834be72af7517580        2
548063113999088594326381812268606132370974703616        730750818665451459101842416358141509827966271488        913438523331814323877303020447676887284957839360        30623a098f6bcd4621d373cade4e832627b4f6   0df4ee08d2fa4f8f834be72af751758000000003        0df4ee08d2fa4f8f834be72af7517580        3
1278813932664540053428224228626747642198940975104       0       182687704666362864775460604089535377456991567872                30623a098f6bcd4621d373cade4e832627b4f6  0df4ee08d2fa4f8f834be72af751758000000004 0df4ee08d2fa4f8f834be72af7517580        4
913438523331814323877303020447676887284957839360        1096126227998177188652763624537212264741949407232       1278813932664540053428224228626747642198940975104       30623a098f6bcd4621d373cade4e832627b4f6   4c80f90fea9f4fdeacc0861c888bf13200000000        4c80f90fea9f4fdeacc0861c888bf132        0
182687704666362864775460604089535377456991567872        365375409332725729550921208179070754913983135744        548063113999088594326381812268606132370974703616        30623a098f6bcd4621d373cade4e832627b4f6   4c80f90fea9f4fdeacc0861c888bf13200000001        4c80f90fea9f4fdeacc0861c888bf132        1
548063113999088594326381812268606132370974703616        730750818665451459101842416358141509827966271488        913438523331814323877303020447676887284957839360        30623a098f6bcd4621d373cade4e832627b4f6   4c80f90fea9f4fdeacc0861c888bf13200000002        4c80f90fea9f4fdeacc0861c888bf132        2
365375409332725729550921208179070754913983135744        548063113999088594326381812268606132370974703616        730750818665451459101842416358141509827966271488        30623a098f6bcd4621d373cade4e832627b4f6   4c80f90fea9f4fdeacc0861c888bf13200000003        4c80f90fea9f4fdeacc0861c888bf132        3
182687704666362864775460604089535377456991567872        365375409332725729550921208179070754913983135744        548063113999088594326381812268606132370974703616        30623a098f6bcd4621d373cade4e832627b4f6   4c80f90fea9f4fdeacc0861c888bf13200000004        4c80f90fea9f4fdeacc0861c888bf132        4

The first line of /tmp/tmp.txt

Vnode IDs
0
182687704666362864775460604089535377456991567872
365375409332725729550921208179070754913983135744

Bucket=30623a098f6bcd4621d373cade4e832627b4f6 <=  s3://test
Key=0df4ee08d2fa4f8f834be72af751758000000000
UUID=0df4ee08d2fa4f8f834be72af7517580
Seq=0

% riak attach

(dev1@127.0.0.1)1> {ok, C} = riak:local_client().
{ok,{riak_client,['[email protected]',undefined]}}
%% For BKey of the first line of /tmp/tmp.txt
(dev1@127.0.0.1)2> C:get(mochihex:to_bin("30623a098f6bcd4621d373cade4e832627b4f6"), mochihex:to_bin("0df4ee08d2fa4f8f834be72af751758000000000")).
{ok,{r_object,<<48,98,58,9,143,107,205,70,33,211,115,202,
                222,78,131,38,39,180,246>>,
              <<13,244,238,8,210,250,79,143,131,75,231,42,247,81,117,
                128,0,0,0,0>>,
              [{r_content,{dict,4,16,16,8,80,48,
                                {[],[],[],[],[],[],[],[],[],[],[],[],...},
                                {{[],[],[],[],[],[],[],[],[],[],...}}},
                          <<104,104,104,189,165,199,75,149,201,195,152,60,205,198,
                            95,155,119,98,193,...>>}],
              [{<<"ÅR±ÿ\vÌáÿòÿD">>,{1,63596997080}}],
              {dict,1,16,16,8,80,48,
                    {[],[],[],[],[],[],[],[],[],[],[],[],[],...},
                    {{[],[],[],[],[],[],[],[],[],[],[],...}}},
{ok, Bin} = file:read_file("/tmp/tmp.txt"), ok.
Ls = binary:split(Bin, <<"\n">>, [global]), ok.
f(BKs), BKs = [begin
                   [_,_,_,_,BHex,KHex|_] = binary:split(L, <<"\t">>, [global]),
                   {mochihex:to_bin(binary_to_list(BHex)), mochihex:to_bin(binary_to_list(KHex))}
               end || L <- Ls, L =/= <<>>], ok.
[{ok, _} = C:get(B, K) || {B, K} <- BKs].

Stop riak node -> Cleanup

% ../riak_ee-2.0-cs-2.0/dev/dev1/bin/riak escript \
   $PWD/priv/tools/internal/offline_delete.erl \
   $PWD/../riak_ee-2.0-cs-2.0/dev/dev1/data/bitcask \
   /tmp/tmp.txt

Restart riak node -> riak attach

(dev1@127.0.0.1)1> {ok, C} = riak:local_client().
{ok,{riak_client,['[email protected]',undefined]}}
%% For BKey of the first line of /tmp/tmp.txt
(dev1@127.0.0.1)2> C:get(mochihex:to_bin("30623a098f6bcd4621d373cade4e832627b4f6"), mochihex:to_bin("0df4ee08d2fa4f8f834be72af751758000000000")).
{error,notfound}
{ok, Bin} = file:read_file("/tmp/tmp.txt"), ok.
Ls = binary:split(Bin, <<"\n">>, [global]), ok.
f(BKs), BKs = [begin
                   [_,_,_,_,BHex,KHex|_] = binary:split(L, <<"\t">>, [global]),
                   {mochihex:to_bin(binary_to_list(BHex)), mochihex:to_bin(binary_to_list(KHex))}
               end || L <- Ls, L =/= <<>>], ok.
[{error, notfound} = C:get(B, K) || {B, K} <- BKs].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment