diff options
Diffstat (limited to 'weed/filer/ydb/ydb_queries.go')
| -rw-r--r-- | weed/filer/ydb/ydb_queries.go | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/weed/filer/ydb/ydb_queries.go b/weed/filer/ydb/ydb_queries.go index 923ccc20f..0f925584e 100644 --- a/weed/filer/ydb/ydb_queries.go +++ b/weed/filer/ydb/ydb_queries.go @@ -4,6 +4,7 @@ import asql "github.com/chrislusf/seaweedfs/weed/filer/abstract_sql" const ( insertQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $directory AS Utf8; DECLARE $name AS Utf8; @@ -16,6 +17,7 @@ const ( ($dir_hash, $name, $directory, $meta, $expire_at);` updateQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $directory AS Utf8; DECLARE $name AS Utf8; @@ -28,6 +30,7 @@ const ( ($dir_hash, $name, $directory, $meta, $expire_at);` deleteQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $name AS Utf8; @@ -35,6 +38,7 @@ const ( WHERE dir_hash = $dir_hash AND name = $name;` findQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $name AS Utf8; @@ -43,6 +47,7 @@ const ( WHERE dir_hash = $dir_hash AND name = $name;` deleteFolderChildrenQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $directory AS Utf8; @@ -50,6 +55,7 @@ const ( WHERE dir_hash = $dir_hash AND directory = $directory;` listDirectoryQuery = ` + PRAGMA TablePathPrefix("%v"); DECLARE $dir_hash AS int64; DECLARE $directory AS Utf8; DECLARE $start_name AS Utf8; @@ -58,6 +64,19 @@ const ( SELECT name, meta FROM ` + asql.DEFAULT_TABLE + ` - WHERE dir_hash = $dir_hash AND directory = $directory and name %s $start_name and name LIKE $prefix + WHERE dir_hash = $dir_hash AND directory = $directory and name > $start_name and name LIKE $prefix + ORDER BY name ASC LIMIT $limit;` + + listInclusiveDirectoryQuery = ` + PRAGMA TablePathPrefix("%v"); + DECLARE $dir_hash AS int64; + DECLARE $directory AS Utf8; + DECLARE $start_name AS Utf8; + DECLARE $prefix AS Utf8; + DECLARE $limit AS Uint64; + + SELECT name, meta + FROM ` + asql.DEFAULT_TABLE + ` + WHERE dir_hash = $dir_hash AND directory = $directory and name >= $start_name and name LIKE $prefix ORDER BY name ASC LIMIT $limit;` ) |
