From 727765b248ad0a07e42892f80cfbcb8b5a99db44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Magiera?= Date: Fri, 3 Dec 2021 12:33:23 +0100 Subject: [PATCH] Command to list active sector locks --- api/api_storage.go | 1 + api/docgen/docgen.go | 7 ++++ api/proxy_gen.go | 13 +++++++ build/openrpc/full.json.gz | Bin 25688 -> 25690 bytes build/openrpc/miner.json.gz | Bin 11151 -> 11267 bytes build/openrpc/worker.json.gz | Bin 3401 -> 3402 bytes cmd/lotus-miner/storage.go | 41 ++++++++++++++++++++ documentation/en/api-v0-methods-miner.md | 32 +++++++++++++++ documentation/en/cli-lotus-miner.md | 14 +++++++ extern/sector-storage/stores/index.go | 1 + extern/sector-storage/stores/index_locks.go | 30 ++++++++++++++ extern/sector-storage/stores/mocks/index.go | 15 +++++++ extern/sector-storage/storiface/storage.go | 16 ++++++++ 13 files changed, 170 insertions(+) diff --git a/api/api_storage.go b/api/api_storage.go index 8cca2aa5b..4e09ecfa5 100644 --- a/api/api_storage.go +++ b/api/api_storage.go @@ -145,6 +145,7 @@ type StorageMiner interface { StorageLock(ctx context.Context, sector abi.SectorID, read storiface.SectorFileType, write storiface.SectorFileType) error //perm:admin StorageTryLock(ctx context.Context, sector abi.SectorID, read storiface.SectorFileType, write storiface.SectorFileType) (bool, error) //perm:admin StorageList(ctx context.Context) (map[stores.ID][]stores.Decl, error) //perm:admin + StorageGetLocks(ctx context.Context) (storiface.SectorLocks, error) //perm:admin StorageLocal(ctx context.Context) (map[stores.ID]string, error) //perm:admin StorageStat(ctx context.Context, id stores.ID) (fsutil.FsStat, error) //perm:admin diff --git a/api/docgen/docgen.go b/api/docgen/docgen.go index 5478e5ea6..5d87e9d20 100644 --- a/api/docgen/docgen.go +++ b/api/docgen/docgen.go @@ -254,6 +254,13 @@ func init() { api.SectorState(sealing.Proving): 120, }) addExample([]abi.SectorNumber{123, 124}) + addExample([]storiface.SectorLock{ + { + Sector: abi.SectorID{Number: 123, Miner: 1000}, + Write: [storiface.FileTypes]uint{0, 0, 1}, + Read: [storiface.FileTypes]uint{2, 3, 0}, + }, + }) // worker specific addExample(storiface.AcquireMove) diff --git a/api/proxy_gen.go b/api/proxy_gen.go index feb08531f..88ff4cd15 100644 --- a/api/proxy_gen.go +++ b/api/proxy_gen.go @@ -794,6 +794,8 @@ type StorageMinerStruct struct { StorageFindSector func(p0 context.Context, p1 abi.SectorID, p2 storiface.SectorFileType, p3 abi.SectorSize, p4 bool) ([]stores.SectorStorageInfo, error) `perm:"admin"` + StorageGetLocks func(p0 context.Context) (storiface.SectorLocks, error) `perm:"admin"` + StorageInfo func(p0 context.Context, p1 stores.ID) (stores.StorageInfo, error) `perm:"admin"` StorageList func(p0 context.Context) (map[stores.ID][]stores.Decl, error) `perm:"admin"` @@ -4647,6 +4649,17 @@ func (s *StorageMinerStub) StorageFindSector(p0 context.Context, p1 abi.SectorID return *new([]stores.SectorStorageInfo), ErrNotSupported } +func (s *StorageMinerStruct) StorageGetLocks(p0 context.Context) (storiface.SectorLocks, error) { + if s.Internal.StorageGetLocks == nil { + return *new(storiface.SectorLocks), ErrNotSupported + } + return s.Internal.StorageGetLocks(p0) +} + +func (s *StorageMinerStub) StorageGetLocks(p0 context.Context) (storiface.SectorLocks, error) { + return *new(storiface.SectorLocks), ErrNotSupported +} + func (s *StorageMinerStruct) StorageInfo(p0 context.Context, p1 stores.ID) (stores.StorageInfo, error) { if s.Internal.StorageInfo == nil { return *new(stores.StorageInfo), ErrNotSupported diff --git a/build/openrpc/full.json.gz b/build/openrpc/full.json.gz index 7d44a46a09de7e2f745e52919599de204a92b3a6..e39ebc6a20737848c433d295d93d694532317089 100644 GIT binary patch delta 19509 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 P00960TAg5rWeNoVQ2FDC diff --git a/build/openrpc/miner.json.gz b/build/openrpc/miner.json.gz index 571159054d990e6f92087e375288003ed9e7a893..e09ecdcb519a2a7f9579555b217e97820ce46dd6 100644 GIT binary patch delta 11261 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 delta 11144 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 a;oGCB_W1ba@&5+^0RR8uYoax?2Lb?bU%HO~ diff --git a/build/openrpc/worker.json.gz b/build/openrpc/worker.json.gz index 83d951047168368962397ea15eb0ea4bc68c1800..f5cbf4b84c5eca57fffa63a1e3f4e858babdd5a0 100644 GIT binary patch delta 1321 zcmV+^1=jk>8p;~53IhXCUlEfH13`a-UcM;(fw-}(C`f*rYG^hxv_ZL`F93xPXQPKx z$d_TU9xHxl_|yK$F;PWO>$BPvqTS3xIXK(m)}Ii!7Rh~cpsof)mj$L-4J{>g5<}3! zWFf_vVx0OV^}x)GeJID5?L45pnQD<{i!@&w(j2M<@BkBN;U6emi;6fQ(YTY%13dzc zw6hEZJp+HN=V#-7avsoikcwY1DL2-#o(GFnMJ@ZLIY3ecBZAC9CMo{5JV#OoFp&h;>3&Agb;kg+gLF zHV}k>GY8-OQ3DpVm%#!NM8yh+6|EKczCy@r3EPnHRfmMysK|f%cUx6;o1#&Xw}dks+Wo8dZvzjQ?*K(7`F^j8e+yX=r1M?c zW-qi0{^U!6B5U$-@o|>a_5vNRrnb#$Kt+Ff&$E@EJu7>iW>^^8@Y|wU%X;C;rH}KK zOGM?DeuiCEdUk7AtYtM&8VDt{zWDJIL5yv0fcJF<8XP~MObtD}Ki!L0qAD6;}zZrU#RCVdaT*|JX02{@un3;9CU|p38r_@3NR#t)6!yN<$d=r^ok(xoYz;S8exj&rLVa z0orDT_~pU9*3Y$m?zQ>3VZnz~gh8KDwEy-{)VP)%qEs}shX;%pYSIZNh8^GTX?@{Y z=jjE4`Ea3N(LewcvQ-Uy$9u4{TpWiH@}_lx74i zVGx;5Cb+_)P_kqF9V*pH)|!{-%rMJ;Dexxt-0LRK3n&+b%x@wxRnqyYP3+Z~e616&P=O-Vqu<(|x6YIX;qn zMc63R02jBOqG$*N7Z)5H2tPB5%!)i;zs!bP{;kb^%Im(@r@iW}qrTFU*9+v@}00960R+AgLK%oEtq7{$A delta 1320 zcmV+@1=sq@8p#^43IhX?HWZT$13`cKC|{KRK-^eX6ePb*H8dL;+Mry}7l6Wtv(dvT zn5ZJC^;vBS(Qf9U9Gq=&>raSVi{!pJP*($@%L3D^hL(~#i6LlV zvXEj-F;4xGdSGV8K9u9jb{^2)Otna}MVhY-Y4*nj@BkBN;U6emi;6fQ(YTY%13dx` zm9q>4Jp+H#%g@IBf-l{2Fn$LXA3mOXNLLo67 z8wf(cnS<~Cr~wPw%V2>BqGE-^iq;BzUm_CLyCrTw4=@fXuXeXzo=R^AomrmvlM?qs zlyZOAjoc~sybFFEYSz>9)$9wh5M=1a-)OIV#Z{{HF|Qm*k!~td%Z{*(*3Jrhoa%qEn zGI^4^!eGMrN}c_H27=mm zW-bRS4Qc~E)7U+--G7|Ne_e0o*zP|wdyZCfO`l`UTMax9>FR?X!~k{nSJ6~P#H+1m zd>X2>tP^Cl0cjhMzGTd-7ksNA!gGIF_gxk^k|Md9YFjs9J=Bn);?z!pa zIY8U25WhUQ*ZR5E&%HK3*Dv^xiZJL?iuT_giW=9lLzIf9_V9oaLrprt#IWPrJ*_W1 z3;jI@U-;^`dD^Xy7Dcou;wM58gM#m^Bs}6i0dv%NznD34$NPoN5&ffphBkkAK08%C z2f&ak%`Xo#w4Sf^e6P*(jS9Y&vR`8T;TiQ!rP4o_L;n%qqtv+o8O%Hmw#oG*%(aST z%nL0rG4ns3+h)uEJlXQ&ffq3fzXU5gvi>51Hl+6q z@Fm)41!MpP&$=7!=zz}-2YfmS#XpzhPqt%M&S;cCIjK(QtP0@y>qgNC)qchFrO z;=N_8mF}NHy0wCHJDWABdY!|zU495`L-%WT;qRE=`f0r@Fy8jOBQ$=d`$_?Gd?fjb zuqdekE^a+V(GUnOE;u+4er6Pz6?wjXnGLu6Tbuoq*L|-~d(~S 0 { + lockstr += fmt.Sprintf("%s(%s) ", storiface.SectorFileType(1< 0 { + lockstr += fmt.Sprintf("%s(%s:%d) ", storiface.SectorFileType(1<