From b0428a1e5e03d5a812d54fc7c89a60c2d2f67a84 Mon Sep 17 00:00:00 2001 From: Kevin Lynx Date: Wed, 7 Aug 2013 21:48:11 +0800 Subject: [PATCH] fix sphinx builder query range bug; improve sphinx builder db query performance, to avoid `getmore' command and the 4M useless response --- deps/mongodb/ebin/mongo_cursor.beam | Bin 7672 -> 7668 bytes ebin/db_store_mongo.beam | Bin 16712 -> 17136 bytes ebin/dhtcrawler.app | 6 +++--- ebin/sphinx_torrent.beam | Bin 7540 -> 7592 bytes 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/deps/mongodb/ebin/mongo_cursor.beam b/deps/mongodb/ebin/mongo_cursor.beam index 58cf89e2d840bd1eef291639f1f7d4ee8f250e0e..ada290300015bb892406b84414efa3c7ce4acc99 100644 GIT binary patch delta 4507 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 delta 4498 zcmV;D5pC}DJNP>YMo&^P0015Eu?W8l0qB#+3yV4iVH#lzVKQMQXaZya26Jz9a${v{ z07YdwFK}{dFKcXYa%wMda%yugWpZp`Zf7rKXmn$8VRvk0a+7=vBY#0+b94Xz5WIs> z002>gc$}qN>2DNA79V?NY@FB&0fd%>Gl3YEBY|Ds(Oxm!t?soJAd!h)y-_TnOW}| z^95tt^IfCp7p@r%>j!#!XM^8G*D~0np5RB$wibLQJ^0hL zyyQ>cm}6suKl3H0YF3S0@OQRm)QxONEmj?mSy4gi`hmJo)_;3UsOuN1WqXeDZ(zTs zty$xG*=e|pcgC^{p5SXQ^tUH2qN4OwtI|bX$ zAPt6Job}2#6uNf_&Rxv)kdt!l7F@f{OfLgv*>_w;7<2w&ooNZN7)c=U+!(N!1zCPO zVa~-$0(!n-Gg2VA8}RovY||>0Z7Y=gzH8MS-zr3-0)Or-;NB3|7)Yf`ccoHk*#TYh zx%t~P=5GV$%k1IvHcZgNic8(DF=D&gi0$ngp$06MxI<&W4z&S{+*`JNYsPZhut8f5 zT<%Vd89UWx?Ci)4WvOwQyEG>3Qk%fYxoX*qdof1&E`;)cd)kwcy(<8vQ*6{M+pn|( zY;`LThJWqW_^}(8r69Xj$#N~bXa#oYXU{ES_N=>(?=V0go>k1BS>A@sOt(2LOv?)R z!V!6CgtAWZx{z?GTBEm*#|R;w7d_dww|)h zreL3^2Bx-O2<>k&4-E*`0j4j}?5D*NYawa%f4{^|_oAI2Sr`~N4ayO7bL)H%j>j$COAgzFwFB#Qn z-h(4I3a*XJ-CCpSmm{mdgLpWxag*TMgz5(}ZWfH2Sv5u~$kJuK2B#=aErBC7d{MeL zXn)YLL5+?LE#mYqr6*FwNWIgJQ?(4cbv5nflIz;og07Ym&!ukC#CDT9wz7~mI)EBh zLhNSQiY#DGS)FdC+^EnugF*-T*0D`vnOWy5%72SI*(7{K{T8Ht3sJu%b+Y+8Y%(Sb zYg9a08o;eW=+-7p=0m~Cwix|h*`BFdfq&iCE$~FwE8u2AWSd&A>;cG)mf(@&2Pjr1i8HnMEl zu7-k2K?l1aq4%$BgrxO?Oy;Xl)hb{YJm~noVY!Qeh&~D%xX%BZZlk|l*WM=0=~Kb_Df`2lE7t=`vg|iLH8OP2pcpiW&u93^K{k?Dwoi=QhYAcb?iY;v znF_XJszjW@VV}*CxnBVe4Q-7TC9ZDJd z8JHJ)XDq+wxVn|=5#h*@CX>Ta!Fp5+wxg;(e@u)#CQs_ra8=JH9<+qmRL7zq9?@X- zh#Ip;I&A_i2ac;c+F6xq;w&4f(tO$s#h1ITQ6eSu+TNk=Fmu} z?f4~!sio{Af_;QVJ)E>H*MC(Vi5wTK$Jw)RS}7X!V1}m5Cj|2eIY5MQR4|SP`;6df zknJ@}u2ZATV}f}s?fh^^vnGLoYbn#|@#F~{*5rFwo$q03wrw4C`ebpzBN{tK)OL(? zWJekjxai{=OOC58Io^>aI+$^>Cp1=^P+M^V)M3kJq=A^r9@UsKs(&_Rw4>W1U4;m_ zV;VEY)MkvCX-CXsXwn`dllEA%BWAYnZ1SeV9yDSwnBePHakd-0ynr^fj4NAe#9qqO zUbY4?8%3Y@0pQUf@@O#irgsqC^a4fE-A^+TPjU;?luRh>MwuAIcXuFE^>E^u%`+wz zwa}el?TDhA4=7cm;eWA(C68bBy5R=A@BIrzC?T(#lwM(wc;#!NgxvElzSm1geg6!m z=gaXdo>224wNl~f&DR1#v~JD&jXG;2`w_y~I<-66--S}x&+LVGZIlb&6A9O}JyBHg z3OK@m*Qf(>RO$u!a3_@J*j~Isjs?qua%??bs>qCzNpcX?9DgF7S_xnUMmdrwtDi~% zS2IMhmrn$ehyRE}s#=?iijCheLiKu3S+56Sy(0d4qKlK{)&}SyBq|D;x||N8aym%L z=^$-vpm+`;N2Ss^#C3*IJH#^*;kj$JhduG#MdPppsQ^cZWq=+Qwj72pO3CzaAa^Fz zcNo-};0&wKZZ(OrSQQX=3JZCMG zeazAgSbA)SfuzWFGE!Hef__SdC6bgA(hvk|^bQ;X-;fflLt3y7QLqlBw(}trharN$ zA&fr=zhPv$6!c-3pkXciMiBf)WcZ=Qs0w}~O8AW^;D0v~TMH;@@H-BDIIe{seIiL2 z#fTV1VIQUN8>P!P48Ktbzfl0cq-~C>uy+z-FM8<`VdzfC9e)QF#0VHi2pE^Zn~aK$1Wajo{sN-*3oV}M6G_Sh#`6S9)&#}#1oCEr;&}q% zc|wWj2^F3v0iKgLhY_GBm4KdvfX=na-%Wr!iDEHHfIF$VB@Z}*H-lTIL0e(*O{N#0 zkc-OZ6pUY1&ikn-LP>%cYp(ER!0qjpfP!n6h;Ns?HOd!nb;&rg)Aa0U+DK4X;uWz zpM}n!MVihc=g-m}7O;G6EI_xJ$Q9cu82g0L$?LDv}GdC@!dqf`1|9qTCBEicnmny?~K=U5m}?o<)R!aR{Nz zAI1^f;6&DY#GQ)}o)-~3FUIhcZ4Y+MmxKkEIP)a|_%1*UY6}oTk$ir=%%5GR(Yu^P zkHGs1oPp!7bWn<~C;@v#yPdhhw=+DhSHi;;jF4}zN-3z{zz}?cwjp7-^TqH~=YOgQ zqjc(9^a&I3>|5v=806Eh&=7;f z3QCw35~k4?Vd3~`6iGO`C`K2_>-pjMB8fDVAbodXg0IKI(I&_O94WmjXyN%mYSva=D^GC+bh;cLMYm>0>X5_+y%ss)4gRK^TurL$#$D-wV+<&Np8I5;duM^ekRifmv1mGDh# zGmaD~bDOUQB6)T^7XS*|7Js|7D3+mIoBJ(MkR~~f4%X_xI66e0)7>B*!;sj&G10-$>2z zO|11MjLS_T?`Ct$Z=njjMXLH15qqmiRo_N3Z%fe#1>7b;yN!V+EWCqadxymK4u~zM z$ycynoL zRPP~h-6L?gM@#LVkS9m*Cz#ovfY(3iZTJ~w_Gd+Af7WL9K7ai0A4p#BL#ytGR!ITB z-z4Dog<<#A?d^VW`YODNc>f!1L1jyRftLIN;`57oZeSC_19{Q=KxlZ7`i9Gc@KELZ zMtndT9y>$F9&p_c65UBCfEan})3FfnUm_%-f1vorhQxnK$XOyE(}Y{YC2H0ZH)~06 z){;nPvie-2tAGDr@qZ^mI@+)B(2Nbp6{ez>yb=PMt{J7LaB9JK4O$Jqp=$UIw%*^g zg|N(b2+?r>xM^7C(T$tVvYd$JCN;1u%vm<&|H~kZ|1vjj86B{(-?>W+ffbpeYXc8) z1AYj1IuDbxw!AR>q5Kr)S>wt>;mSj@HGP=a3me-C4u9T?9K4k#yQCGNafNJmR+{mv z8qSKmo?6jI^miQ5-^H-s)jj+XcJ-0$>Z2yXeI!hOL|lC<0q%I#wlfS7F0krRS%s z{EafvFIVM$xhgDLP3@PfP5b34(5mSvt4;c4t3s6hauvVoPZIE02zd+-jff?Wxh0SF zmOO6q#ec&S!TJOo6cKe#xVk5Lbx;P;_Ec~_mERgB%ARs%PxZ>4^5UvU=y@g>o}nWb zsqZ}F3ZAL@j-m@7x#%$NS;}D?9Em#CGhP5>K6uV|kBU{%b68r>=?46H+D-2Z!S_P5 zNqxaZ=AxUv7s*W@?_)25n?2d8KcI*|$i(@F34dNAksHTLsd2o7a$W{2cc_ObJj4Q3+NFR|#4PTM1tYX9;TwcnNF?bP0nA khY5}ekqMRwnhBc;p9!Q1rwOVFs|l_Nu?e#YQj^^s7hai>$^ZZW diff --git a/ebin/db_store_mongo.beam b/ebin/db_store_mongo.beam index f75989779f444fcf00b36522715644d394c1c158..65824c78e45c7d5bbdea6212e993b24b3efa9369 100644 GIT binary patch delta 9871 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 delta 9486 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 Mq_CG5p=kgA07Hf1KL7v# diff --git a/ebin/dhtcrawler.app b/ebin/dhtcrawler.app index 8c697da..6aadfc0 100644 --- a/ebin/dhtcrawler.app +++ b/ebin/dhtcrawler.app @@ -1,6 +1,6 @@ {application,dhtcrawler, [{description,"A DHT crawler to index magnet hash to torrent"}, - {vsn,"f16d25d"}, + {vsn,"f887208"}, {registered,[dht_crawler_sup]}, {applications,[kernel,stdlib,crypto,public_key,ssl,inets,bson, mongodb]}, @@ -17,8 +17,8 @@ loc_torrent_sup,name_seger,rmmseg,sphinx_builder, sphinx_builder2,sphinx_builder_sup,sphinx_cmd, sphinx_doc,sphinx_id,sphinx_search,sphinx_torrent, - sphinx_xml,string_split,string_util,time_util, - tor_builder,tor_download,tor_download_stats, + sphinx_torrent2,sphinx_xml,string_split,string_util, + time_util,tor_builder,tor_download,tor_download_stats, tor_location,tor_location_reader,tor_location_writer, tor_name_seg,torrent_file,transfer,urldecode,vlog, xmerl_xml_cdata]}]}. diff --git a/ebin/sphinx_torrent.beam b/ebin/sphinx_torrent.beam index 375b358b46175ad4767b621137d4e9e122e3e58a..aa70f1a631721f8a1e328f26074a3a58245738a2 100644 GIT binary patch delta 931 zcmV;U16=&{I;cAoMo&^P0014JLPbGML3D3z0008%u@nvh1q38)bY+t!0@e!v002X8 zWMu#V2jjB@1EmKT0W&~HfFnQ?LqG!)Knh6%KtlwX2t5Z-le-Ehv*Ze60RaV*NDR~j z1e^#slOPQg1O%K2II}nnE&&jaiCB^DH`X9_N&rX<2Z585b`C9O+kMcy3S?zsb!T5`Zf0*}019MfVs&R< zX>Mk3WB?ClVQFk%Z*E_AVRCM1Zf9r$WB>taYXApnZewh9WMz};4k!l)VGUs_VGENP z4@XM?L1J@s000e9gHQkfI2d@Gom>BJ)W{XzY&PMm3T;(%=qLnqR1iW^5O9G77H)G5 zVN;+7C4P!t~l0kgAk6%qjj{-9vN50i%$mjTR^9~V3UlapK*B?5o%vx65*0RbhG&=|!5 z$&;2DwgDKEO&V5zVaN!H3o*puZzy47C1GKFzkG#PC)UWs(eJtm7A&k0Giu)ja>-+o z5V4XFF;0kBONdxWh*(JocqVu8q+yAp-o;CB0ia8{Ny%Nj#CR7kG2X@NW7&Ncc`~AAc04SGLqBRiTYre^7lEZ!8O zoANa+Gj|i4yD5!;i3hV)Zf6eSky>J}D!bpN3i)KqH znq2X=P`s@!<2Kg2EhTO1S+{K}sBNvFw)KMA)(UFdR8ZRk3u;@t#r_`K{$2`yuiO5f zuPR?i7P<-~zb93b*U9@V8AP}Kv+(8TEP`4R{G#?;D!=%e!5^@}AEXH%%&ox(r8OX% z<40BBN1Es#;qM%43nOyq{{(<=URv}?YWq}r#$1T}l#3*p{)r!!63c$2T)#T>|JfAu ze+xRTxz7eW4DH%yD(!RD@$0WClW`m+8QXlJFf~#T{(~*Z-p5?lvH$D;A1s+nbpVsD F9L7Avg8Kjf delta 894 zcmV-^1A+XgJM=mfMo&^P0013qLPbGML3D3z0008$u@nvh1Op^&bdx6n)(AsyWMu#V z2i>y>1EmKN69hm56F^6RBR~pC1DOat2QZVx3MT;ov+D|E0RaP(Pz=-@1rxz00000; z000000000v00001000001rxz0vp@|l0T5}uueHlNrcIOedFj?9c%qYj4lPH#gKPi* z00d|PWB>Mk3XaZya0cmRh2Wf6&Y;|O1XaZya z25)tAWNC7100d=XX>OAd4=4u(VGUsxVKXA@=`=_!P!E6G=bkKgVlA2a=yWL$+J?}u0rQ&uC}xp#Z3DZuA$4!)t^ujWZ~iIU zAeYK>5%sbgN;+e~bi3hVqY-jf4ky>J}Dtp_e^c0b@GLqWf zVr_4w%(tc5U}UTvuvqzA`c|lu-P^y5b1e-Q-sv|evweSoz}-8&!FpFTSQrGhgvKqc zCbqDHThfiKlA72u*2I=l6S?ATp?F(e#%-*3TT0s2lWN;kFWXwZZ0q&1t<}r6sb01R z*2}hbNBupv{k;_aUbp={Usb-4EOZsXeNT!aFN614GKgOMC*jLaSp>Bt_*v~le)ctk zKVXADNE1;$m^c0p%EnK&zK^QDk2KLg!rwX87DnXA{t4>+ytL?()b^?L1i29TDHlmH z{S!Y5C6@g{xqflz|Dq}AzY037xz7eW49(bQD(!RD&+9KClcXFa7@K&ZFf~#T{(~*Z U-nLxUvH$D;A1RDN4wK>>#-Jd8vj6}9