Skip to content

Commit

Permalink
Add suffix support for Notifications
Browse files Browse the repository at this point in the history
Summary:
# Context

We are introducing EdenFS notifications to support scalable and ergonomic file system notifications for EdenFS mounts.

# This Diff

This diff introduces the concepts of included/excluded Suffixes to the getChangesV2 pipeline.

The files returned from the API will always match any defined included suffixes, and never have any excluded suffixes. If a suffix is both included and excluded, then it is excluded.

A suffix is defined as the substring that ends the string. As currently defined, a suffix could include content past the file extention, including the , eg for file.ext1.ext2, ex2, ext1.ext2, and file.ext1.ext2 are valid suffixes

# Technical Details
This diff creates the thrift definitions for the included/excluded suffix types

# Discussion Points

Reviewed By: jdelliot

Differential Revision: D67613986

fbshipit-source-id: f18957a490d3095324d46046f57233bba92565aa
  • Loading branch information
Chris Dinh authored and facebook-github-bot committed Jan 2, 2025
1 parent 1f0df9f commit af07e42
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions eden/fs/service/eden.thrift
Original file line number Diff line number Diff line change
Expand Up @@ -1941,13 +1941,23 @@ struct ChangesSinceV2Result {
* excludedRoots - optional ist of roots to exclude from results. If not
* provided or an empty list, no roots will be excluded from results.
* Applied after roots are included - see includedRoots.
*
* includedSuffixes - optional list of suffixes to include in results. If not
* provided or an empty list, all suffixes will be included in results.
* Applied before suffixes are excluded - see excludedSuffixes.
*
* excludedSuffixes - optional ist of suffixes to exclude from results. If not
* provided or an empty list, no suffixes will be excluded from results.
* Applied after suffixes are included - see includedSuffixes.
*/
struct ChangesSinceV2Params {
1: PathString mountPoint;
2: JournalPosition fromPosition;
3: optional bool includeVCSRoots;
4: optional list<PathString> includedRoots;
5: optional list<PathString> excludedRoots;
6: optional list<string> includedSuffixes;
7: optional list<string> excludedSuffixes;
}

service EdenService extends fb303_core.BaseService {
Expand Down

0 comments on commit af07e42

Please sign in to comment.