-
Notifications
You must be signed in to change notification settings - Fork 536
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial Loader and driver changes for Data Virtualization #19314
Conversation
packages/drivers/odsp-driver/src/odspDocumentStorageServiceBase.ts
Outdated
Show resolved
Hide resolved
packages/loader/driver-utils/src/documentStorageServiceProxy.ts
Outdated
Show resolved
Hide resolved
packages/loader/container-loader/src/containerStorageAdapter.ts
Outdated
Show resolved
Hide resolved
): Promise<{ snapshot?: ISnapshot | ISnapshotTree; versionId?: string }> { | ||
if ( | ||
this.mc.config.getBoolean("Fluid.Container.FetchSnapshotInNewFormat") === true && | ||
this.service?.policies?.supportNewSnapshotFormat === true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we need supportNewSnapshotFormat? It feels like presence of getSnapshot API should be enough for that, no?
Maybe there are some cases where we have API but it's NYI (i.e. throws). If possible, it would be great not to have that (and basically have one truth on whether it's supported or not)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have added comment on the prop in interface, but I just want to have it and we will enable it in the driver once the driver fully supports the new api as there could be time when we have this api, but internally it is not fully implemented. Also, we can just leave a hook here in case someone wants to disbale it from app side, by passing this policy just in case. We can always remove it later.
⯅ @fluid-example/bundle-size-tests: +4.06 KB
Baseline commit: 4b78959 |
…19314) ## Description 1.) Add interface to support passing all the snapshot contents from storage service to loader. This represents the entire snapshot. `export interface ISnapshot { snapshotTree: ISnapshotTree; blobContents: Map<string, ArrayBuffer>; ops: ISequencedDocumentMessage[]; /** * Sequence number of the snapshot */ sequenceNumber: number | undefined; /** * Sequence number for the latest op/snapshot for the file in ODSP */ latestSequenceNumber: number | undefined; snapshotInNewFormat: true; }` 2.) Add some APIS to differentiate between the full and partial snapshot contents. 3.) Changes in ODSP driver to add api to fetch both full and partial snapshot. 4.) Changes in Loader to support with both full and partial snapshot and fetch it from storage and pass it to the runtime layer. --------- Co-authored-by: Jatin Garg <[email protected]>
Description
1.) Add interface to support passing all the snapshot contents from storage service to loader. This represents the entire snapshot.
`export interface ISnapshot {
snapshotTree: ISnapshotTree;
}`
2.) Add some APIS to differentiate between the full and partial snapshot contents.
3.) Changes in ODSP driver to add api to fetch both full and partial snapshot.
4.) Changes in Loader to support with both full and partial snapshot and fetch it from storage and pass it to the runtime layer.