[ 
https://issues.apache.org/jira/browse/HBASE-26064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17374544#comment-17374544
 ] 

Duo Zhang commented on HBASE-26064:
-----------------------------------

OK, after some investigating, I think we'd better introduce another class 
outside StoreFileManager to do this, as StoreFileManager only keeps all the 
states in memory, and we protect the access with HStore.lock, which means it is 
not a good idea to do IO inside StoreFileManager. Why some methods of 
StoreFileManager throws IOException is just because we throw it manually when 
we find something wrong in our own code, not means we are doing IO.

Will open another issue to remove the IOException thrown and speak clearly that 
StoreFileManager is in memory only. And then we could introduce a class like 
StoreFileTracker to do the actual tracking work.

Thanks.

> Introduce a StoreFileTrackingManager to abstract the store file tracking logic
> ------------------------------------------------------------------------------
>
>                 Key: HBASE-26064
>                 URL: https://issues.apache.org/jira/browse/HBASE-26064
>             Project: HBase
>          Issue Type: Sub-task
>          Components: HFile
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Major
>
> As mentioned in the parent issue, we could abstract a storefile metadata 
> system, then we could use different backend to store the storefile list, and 
> also it is possible to generalize the migration between different tracking 
> system.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to