aboutsummaryrefslogtreecommitdiff
path: root/weed
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-01-14 22:34:35 -0800
committerChris Lu <chris.lu@gmail.com>2021-01-14 22:34:35 -0800
commit54527f03266629844a178eddf7aa9a8d01026b00 (patch)
treea849f62bde329d11a016379f19ff760f216fd2b4 /weed
parentb5ceffe18845a08d3f709b41b39b69ba8dff2f35 (diff)
downloadseaweedfs-54527f03266629844a178eddf7aa9a8d01026b00.tar.xz
seaweedfs-54527f03266629844a178eddf7aa9a8d01026b00.zip
implement hbase changes
Diffstat (limited to 'weed')
-rw-r--r--weed/filer/hbase/hbase_store.go12
1 files changed, 7 insertions, 5 deletions
diff --git a/weed/filer/hbase/hbase_store.go b/weed/filer/hbase/hbase_store.go
index 6b0ad58b9..5a64ffe7e 100644
--- a/weed/filer/hbase/hbase_store.go
+++ b/weed/filer/hbase/hbase_store.go
@@ -148,18 +148,19 @@ func (store *HbaseStore) DeleteFolderChildren(ctx context.Context, path util.Ful
return
}
-func (store *HbaseStore) ListDirectoryEntries(ctx context.Context, dirPath util.FullPath, startFileName string, includeStartFile bool, limit int) ([]*filer.Entry, error) {
+func (store *HbaseStore) ListDirectoryEntries(ctx context.Context, dirPath util.FullPath, startFileName string, includeStartFile bool, limit int) ([]*filer.Entry, bool, error) {
return store.ListDirectoryPrefixedEntries(ctx, dirPath, startFileName, includeStartFile, limit, "")
}
-func (store *HbaseStore) ListDirectoryPrefixedEntries(ctx context.Context, dirPath util.FullPath, startFileName string, includeStartFile bool, limit int, prefix string) ([]*filer.Entry, error) {
+func (store *HbaseStore) ListDirectoryPrefixedEntries(ctx context.Context, dirPath util.FullPath, startFileName string, includeStartFile bool, limit int, prefix string) ([]*filer.Entry, bool, error) {
family := map[string][]string{store.cfMetaDir: {COLUMN_NAME}}
expectedPrefix := []byte(dirPath.Child(prefix))
scan, err := hrpc.NewScanRange(ctx, store.table, expectedPrefix, nil, hrpc.Families(family))
if err != nil {
- return nil, err
+ return nil, false, err
}
+ var hasMore bool
var entries []*filer.Entry
scanner := store.Client.Scan(scan)
defer scanner.Close()
@@ -169,7 +170,7 @@ func (store *HbaseStore) ListDirectoryPrefixedEntries(ctx context.Context, dirPa
break
}
if err != nil {
- return entries, err
+ return entries, hasMore, err
}
if len(res.Cells) == 0 {
continue
@@ -194,6 +195,7 @@ func (store *HbaseStore) ListDirectoryPrefixedEntries(ctx context.Context, dirPa
limit--
if limit < 0 {
+ hasMore = true
break
}
entry := &filer.Entry{
@@ -207,7 +209,7 @@ func (store *HbaseStore) ListDirectoryPrefixedEntries(ctx context.Context, dirPa
entries = append(entries, entry)
}
- return entries, nil
+ return entries, hasMore, nil
}
func (store *HbaseStore) BeginTransaction(ctx context.Context) (context.Context, error) {