-
Notifications
You must be signed in to change notification settings - Fork 48
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
Use the Summary API to improve the schema synchronization performance #80
Use the Summary API to improve the schema synchronization performance #80
Conversation
app.use("/explorer", express.static(path.join(__dirname, "../graph-explorer/dist"))); | ||
app.use( | ||
"/explorer", | ||
express.static(path.join(__dirname, "../graph-explorer/dist")) | ||
); | ||
|
||
const delay = (ms) => new Promise((resolve) => setTimeout(() => resolve(), ms)); | ||
const delay = (ms) => | ||
new Promise((resolve) => setTimeout(() => resolve(), ms)); | ||
|
||
async function retryFetch ( | ||
async function retryFetch( | ||
url, | ||
retries = 1, | ||
retryDelay = 10000, | ||
req, | ||
language | ||
) { | ||
|
||
let reqObjects; | ||
|
||
if (creds === undefined) { | ||
console.error("Credentials undefined. Trying refresh."); | ||
creds = await getCredentials(); | ||
if (creds === undefined) { | ||
throw new Error("Credentials undefined after refresh. Check that you have proper access and that the credentials should work.") | ||
throw new Error( | ||
"Credentials undefined after refresh. Check that you have proper access and that the credentials should work." | ||
); | ||
} | ||
} | ||
reqObjects = await getRequestObjects(req.headers["graph-db-connection-url"], req.headers["aws-neptune-region"]); | ||
reqObjects = await getRequestObjects( | ||
req.headers["graph-db-connection-url"], | ||
req.headers["aws-neptune-region"] | ||
); | ||
await getAuthHeaders(language, req, reqObjects[0], reqObjects[2]); | ||
|
||
return new Promise((resolve, reject) => { | ||
|
||
const wrapper = (n) => { | ||
fetch(url, { headers: req.headers, }) | ||
.then(async res => { | ||
|
||
fetch(url, { headers: req.headers }) | ||
.then(async (res) => { | ||
if (!res.ok) { | ||
console.log("Response not ok"); | ||
const error = res.status | ||
console.log("Response not ok"); | ||
const error = res.status; | ||
return Promise.reject(error); | ||
} else { | ||
console.log("Response ok"); | ||
console.log("Response ok"); |
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 recommend having separate PR/commits for styling changes and business logic changes in the future since the one for styling/formatting changes can be quickly reviewed allowing reviewer to focus on business logic changes only.
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.
It was the pre-commit process configuration. It ran lint and prettier automatically on every modified file. It prevents wrong styling issues, so I need to figure out why in the previous update it didn't update the styling.
However, I could remove all those styling changes manually and prevent the pre-commit hook for this time.
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.
@nestoralvarezd can you please make an update to remove styling changes in this PR? Once approved, we can add the styling changes.
|
||
console.log(response); |
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.
The response from the graph summary endpoint can be pretty big for certain types of graphs.
Could there be any issues with logging the entire response to console in those cases?
Same question for L233 (log statement in rdf summary endpoint)
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.
@nestoralvarezd to comment
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 can remove this kind of large logging
Based on a quick look, it seems like we are fetching the graph summary by calling the respective property graph and rdf graph endpoints but there are no calls to refresh statistics. Since the graph summary is computed using DFE statistics, how would the data shown on graph explorer (fetched using summary API) be updated? Pardon me if I've missed something and this is already handled. This might have already been discussed but just a thought: (cc. @joywa ) |
Please ensure you test this change against a Neptune cluster on engine version <1.2.1.0 to ensure that it still works for older Neptune engine versions where graph summary API is not present using fallback queries. |
Based on a quick look, it seems like we are fetching the graph summary by calling the respective property graph and rdf graph endpoints but there are no calls to refresh statistics. Since the graph summary is computed using DFE statistics, how would the data shown on graph explorer (fetched using summary API) be updated?
Please ensure you test this change against a Neptune cluster on engine version <1.2.1.0 to ensure that it still works for older Neptune engine versions where graph summary API is not present using fallback queries.
|
@gopuneet @nestoralvarezd we decided to not use the refresh statistics to trigger updates. @nestoralvarezd please let us know when testing is complete/if any changes are required. |
85ef10b
to
82a6a19
Compare
82a6a19
to
651ebe0
Compare
I've removed the most of the styling issue from this PR and I've checked that the summary API is working. Neptune instances that do not have the summary API try to use it but then fallback to the normal inference process. |
* new file: package-lock.json modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts new file: packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts modified: packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts modified: packages/graph-explorer/src/connector/gremlin/types.ts modified: packages/graph-explorer/src/core/StateProvider/nodes.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx renamed: packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts renamed: packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts new file: packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx renamed: packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts modified: packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * Use the Summary API to improve the schema synchronization performance (aws#80) * Use Summary API to sync the schema * Update counts badges in ConnectionData * Remove individual counts from ConnectionData * Remove individual counts from ConnectionData * Reduce size of Docker image aws#103 (aws#104) * Reduce size of Docker image aws#103 * add a comment about changes made aws#103 * (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60) * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Update numeric ids neighbors queries * Fix disappearing edge on JanusGraph * Support JanusGraph Gremlin ids * Fix collapsing edges in non-Chromium browsers * Fix runLayout twice when nodes changes * Restore locking nodes on run layout --------- Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> * release-1.2.0 (aws#115) Co-authored-by: Michael Chin <[email protected]> * modified: package-lock.json modified: package.json new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx new file: packages/graph-explorer/src/components/OntologySelect/index.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx new file: packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts new file: packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx modified: packages/graph-explorer/src/components/icons/index.ts modified: packages/graph-explorer/src/components/index.ts modified: packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx new file: packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx modified: packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * modified: packages/graph-explorer/src/core/ConfigurationProvider/types.ts modified: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx modified: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts modified: packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx modified: packages/graph-explorer/src/utils/isValidConfigurationFile.ts modified: packages/graph-explorer/src/utils/saveConfigurationToFile.ts --------- Co-authored-by: nestoralvarezd <[email protected]> Co-authored-by: Kelvin Lawrence <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Michael Chin <[email protected]> Co-authored-by: Michael Chin <[email protected]>
* new file: package-lock.json modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts new file: packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts modified: packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts modified: packages/graph-explorer/src/connector/gremlin/types.ts modified: packages/graph-explorer/src/core/StateProvider/nodes.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx renamed: packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts renamed: packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts new file: packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx renamed: packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts modified: packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * Use the Summary API to improve the schema synchronization performance (aws#80) * Use Summary API to sync the schema * Update counts badges in ConnectionData * Remove individual counts from ConnectionData * Remove individual counts from ConnectionData * Reduce size of Docker image aws#103 (aws#104) * Reduce size of Docker image aws#103 * add a comment about changes made aws#103 * (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60) * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Update numeric ids neighbors queries * Fix disappearing edge on JanusGraph * Support JanusGraph Gremlin ids * Fix collapsing edges in non-Chromium browsers * Fix runLayout twice when nodes changes * Restore locking nodes on run layout --------- Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> * release-1.2.0 (aws#115) Co-authored-by: Michael Chin <[email protected]> * modified: package-lock.json modified: package.json new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx new file: packages/graph-explorer/src/components/OntologySelect/index.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx new file: packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts new file: packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx modified: packages/graph-explorer/src/components/icons/index.ts modified: packages/graph-explorer/src/components/index.ts modified: packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx new file: packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx modified: packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * modified: packages/graph-explorer/src/core/ConfigurationProvider/types.ts modified: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx modified: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts modified: packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx modified: packages/graph-explorer/src/utils/isValidConfigurationFile.ts modified: packages/graph-explorer/src/utils/saveConfigurationToFile.ts --------- Co-authored-by: nestoralvarezd <[email protected]> Co-authored-by: Kelvin Lawrence <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Michael Chin <[email protected]> Co-authored-by: Michael Chin <[email protected]>
* new file: package-lock.json modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts new file: packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts modified: packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts modified: packages/graph-explorer/src/connector/gremlin/types.ts modified: packages/graph-explorer/src/core/StateProvider/nodes.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx renamed: packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts renamed: packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx renamed: packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts renamed: packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts new file: packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx renamed: packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx renamed: packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts modified: packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * Use the Summary API to improve the schema synchronization performance (aws#80) * Use Summary API to sync the schema * Update counts badges in ConnectionData * Remove individual counts from ConnectionData * Remove individual counts from ConnectionData * Reduce size of Docker image aws#103 (aws#104) * Reduce size of Docker image aws#103 * add a comment about changes made aws#103 * (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60) * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Support non-string based ids for gremlin connector * (bugfix/issue-55) Update numeric ids neighbors queries * Fix disappearing edge on JanusGraph * Support JanusGraph Gremlin ids * Fix collapsing edges in non-Chromium browsers * Fix runLayout twice when nodes changes * Restore locking nodes on run layout --------- Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> * release-1.2.0 (aws#115) Co-authored-by: Michael Chin <[email protected]> * modified: package-lock.json modified: package.json new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx new file: packages/graph-explorer/src/components/OntologySelect/index.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx new file: packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx new file: packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts new file: packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx modified: packages/graph-explorer/src/components/icons/index.ts modified: packages/graph-explorer/src/components/index.ts modified: packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx renamed: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json new file: packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts renamed: packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx new file: packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts new file: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts deleted: packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx deleted: packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts modified: packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx modified: packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx modified: packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx * modified: packages/graph-explorer/src/core/ConfigurationProvider/types.ts modified: packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx modified: packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts modified: packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx modified: packages/graph-explorer/src/utils/isValidConfigurationFile.ts modified: packages/graph-explorer/src/utils/saveConfigurationToFile.ts * modified: packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts modified: packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts modified: packages/graph-explorer/src/connector/gremlin/types.ts --------- Co-authored-by: nestoralvarezd <[email protected]> Co-authored-by: Kelvin Lawrence <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Jackson Millard <[email protected]> Co-authored-by: Michael Chin <[email protected]> Co-authored-by: Michael Chin <[email protected]>
Summary API integration
The main aim of this PR is to reduce the synchronization time of the schema by using Neptune Summary API if it is available.
Description of changes:
fetchSchema
process tries to fetch some data, using the Summary API, related to the database structure:fetchSchema
fallbacks to the previous process we had to infer the schema.Now, if the
fetchSchema
process uses the Summary API, we will not have counts by type. So a new method has been added to theAbstractConnector
contract, and its the implementations, in order to fetch the total number of nodes (subjects). It is the method calledfetchVertexCountsByType
and it is called when a user visits the Data Explorer section.By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.