Skip to content
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

Federation guid optimization #31

Merged
merged 269 commits into from
Apr 17, 2024
Merged

Federation guid optimization #31

merged 269 commits into from
Apr 17, 2024

Conversation

MichaelBelousov
Copy link
Contributor

Instead of using External Source Aspects for transformations, keep track of the previously-transformed source changeset id in the version field of only one external source aspect in the target scoping element in the target, and use changeset data to determine if an iModel has been changed when retransforming. This allows us to skip a lot of updates like we did with the External Source Aspect scheme, but without writing a new aspect on transform relation initialization (e.g. branch forking)

@nick4598 nick4598 marked this pull request as ready for review April 16, 2024 13:03
@nick4598 nick4598 requested a review from ColinKerr as a code owner April 16, 2024 13:03
@nick4598
Copy link
Collaborator

All checks are now passing. Marked PR as ready for review.

packages/transformer/src/IModelTransformer.ts Outdated Show resolved Hide resolved
packages/transformer/src/IModelTransformer.ts Outdated Show resolved Hide resolved
packages/test-app/test.sh Outdated Show resolved Hide resolved
packages/transformer/src/IModelTransformer.ts Outdated Show resolved Hide resolved
@nick4598 nick4598 self-requested a review April 17, 2024 18:52
@nick4598 nick4598 merged commit 1100de5 into main Apr 17, 2024
12 checks passed
@nick4598 nick4598 deleted the federation-guid-optimization branch April 17, 2024 20:17
@nick4598 nick4598 restored the federation-guid-optimization branch June 10, 2024 13:37
nick4598 added a commit that referenced this pull request Nov 20, 2024
Instead of using External Source Aspects for transformations, keep track
of the previously-transformed source changeset id in the version field
of only one external source aspect in the target scoping element in the
target, and use changeset data to determine if an iModel has been
changed when retransforming. This allows us to skip a lot of updates
like we did with the External Source Aspect scheme, but without writing
a new aspect on transform relation initialization (e.g. branch forking)

---------

Co-authored-by: imodeljs-admin <[email protected]>
Co-authored-by: Vilius Ruskys <[email protected]>
Co-authored-by: Kyrylo Volotovskyi <[email protected]>
Co-authored-by: BENTLEY\Kyrylo.Volotovskyi <[email protected]>
Co-authored-by: Daniel Rodriguez <[email protected]>
Co-authored-by: Daniel Rodriguez <[email protected]>
Co-authored-by: nick.tessier <[email protected]>
Co-authored-by: Mindaugas Dirginčius <[email protected]>
Co-authored-by: Jiarui Zhang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
8 participants