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

Clean up datastore creator and get storeid from page config #7009

Merged
merged 4 commits into from
Aug 23, 2019

Conversation

saulshanabrook
Copy link
Member

@saulshanabrook saulshanabrook commented Aug 14, 2019

Builds on #6871

  • Remove extra TableManager abstraction. We moved the changed signal to the TableManager and will move the typing of the schema to the core Datastore object in the future. Ideally, it would be nice to remove the TableManager abstraction as well, eventually.
  • Put the storeid on the page config, instead of sending a request for it.
  • Try removing datastore manager, making it all async
  • Fix empty history responses

Now this depends on jupyterlab/jupyterlab_server#74

@jupyterlab-dev-mode
Copy link

Thanks for making a pull request to JupyterLab!

To try out this branch on binder, follow this link: Binder

@saulshanabrook saulshanabrook marked this pull request as ready for review August 21, 2019 15:42
if self.store_id is not None:
# TODO: Temporary minimal reaction:
self.log.warning("Trying to reopen store that is already connected")
raise web.HTTPError(400)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The bit before this acts as a pretty decent placeholder (raises if trying to connect multiple times with the same store id).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should probably also fail here if the store_id is not given.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed the backend knowledge of the store_id altogether. I actually think this is maybe ok? It just identifies users by connection. If you lose connection, then you make a new one and it treats you as a new peer.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It possibly makes things like checkpoints a little harder. I'll make a separate issue for checkpoints. We can reintroduce this concept if needed after that.

Copy link
Member

@ian-r-rose ian-r-rose left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@saulshanabrook I'm happy for this to be in when you are. Once we merge our respective PRs we should be pretty close to being able to knit them together.

packages/datastore/src/client.ts Outdated Show resolved Hide resolved
packages/datastore/src/client.ts Show resolved Hide resolved
packages/datastore/src/manager.ts Show resolved Hide resolved
packages/datastore/src/manager.ts Show resolved Hide resolved
packages/datastore/src/wsmessages.ts Show resolved Hide resolved
@ian-r-rose ian-r-rose merged commit f7f8cca into datastore Aug 23, 2019
@vidartf vidartf deleted the datastore-storeid branch August 24, 2019 14:33
@lock lock bot added the status:resolved-locked Closed issues are locked after 30 days inactivity. Please open a new issue for related discussion. label Sep 23, 2019
@lock lock bot locked as resolved and limited conversation to collaborators Sep 23, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status:resolved-locked Closed issues are locked after 30 days inactivity. Please open a new issue for related discussion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants