@@ -143,8 +143,11 @@ func (rs *RemoteChunkStore) HasChunks(ctx context.Context, req *remotesapi.HasCh
143143 return resp , nil
144144}
145145
146- func (rs * RemoteChunkStore ) getRelativeStorePath (cs RemoteSrvStore ) (string , error ) {
147- cspath , ok := cs .Path ()
146+ func (rs * RemoteChunkStore ) getRelativeStorePath (ctx context.Context , cs RemoteSrvStore ) (string , error ) {
147+ cspath , ok , err := cs .Path (ctx )
148+ if err != nil {
149+ return "" , err
150+ }
148151 if ! ok {
149152 return "" , status .Error (codes .Internal , "chunkstore misconfigured; cannot generate HTTP paths" )
150153 }
@@ -175,7 +178,7 @@ func (rs *RemoteChunkStore) GetDownloadLocations(ctx context.Context, req *remot
175178
176179 hashes , _ := remotestorage .ParseByteSlices (req .ChunkHashes )
177180
178- prefix , err := rs .getRelativeStorePath (cs )
181+ prefix , err := rs .getRelativeStorePath (ctx , cs )
179182 if err != nil {
180183 logger .WithError (err ).Error ("error getting file store path for chunk store" )
181184 return nil , err
@@ -280,7 +283,7 @@ func (rs *RemoteChunkStore) StreamDownloadLocations(stream remotesapi.ChunkStore
280283 if err != nil {
281284 return err
282285 }
283- prefix , err = rs .getRelativeStorePath (cs )
286+ prefix , err = rs .getRelativeStorePath (stream . Context (), cs )
284287 if err != nil {
285288 logger .WithError (err ).Error ("error getting file store path for chunk store" )
286289 return err
@@ -396,7 +399,7 @@ func (rs *RemoteChunkStore) StreamChunkLocations(stream remotesapi.ChunkStoreSer
396399 if err != nil {
397400 return err
398401 }
399- prefix , err = rs .getRelativeStorePath (cs )
402+ prefix , err = rs .getRelativeStorePath (stream . Context (), cs )
400403 if err != nil {
401404 logger .WithError (err ).Error ("error getting file store path for chunk store" )
402405 return err
@@ -765,13 +768,13 @@ func (rs *RemoteChunkStore) ListTableFiles(ctx context.Context, req *remotesapi.
765768
766769 md , _ := metadata .FromIncomingContext (ctx )
767770
768- tableFileInfo , err := getTableFileInfo (logger , md , rs , tables , req , cs )
771+ tableFileInfo , err := getTableFileInfo (ctx , logger , md , rs , tables , req , cs )
769772 if err != nil {
770773 logger .WithError (err ).Error ("error getting table file info" )
771774 return nil , err
772775 }
773776
774- appendixTableFileInfo , err := getTableFileInfo (logger , md , rs , appendixTables , req , cs )
777+ appendixTableFileInfo , err := getTableFileInfo (ctx , logger , md , rs , appendixTables , req , cs )
775778 if err != nil {
776779 logger .WithError (err ).Error ("error getting appendix table file info" )
777780 return nil , err
@@ -792,14 +795,15 @@ func (rs *RemoteChunkStore) ListTableFiles(ctx context.Context, req *remotesapi.
792795}
793796
794797func getTableFileInfo (
798+ ctx context.Context ,
795799 logger * logrus.Entry ,
796800 md metadata.MD ,
797801 rs * RemoteChunkStore ,
798802 tableList []chunks.TableFile ,
799803 req * remotesapi.ListTableFilesRequest ,
800804 cs RemoteSrvStore ,
801805) ([]* remotesapi.TableFileInfo , error ) {
802- prefix , err := rs .getRelativeStorePath (cs )
806+ prefix , err := rs .getRelativeStorePath (ctx , cs )
803807 if err != nil {
804808 return nil , err
805809 }
0 commit comments