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

Make inverted index used for index predicates persistent #395

Closed
fgregg opened this issue Jul 4, 2015 · 6 comments
Closed

Make inverted index used for index predicates persistent #395

fgregg opened this issue Jul 4, 2015 · 6 comments

Comments

@fgregg
Copy link
Contributor

fgregg commented Jul 4, 2015

http://www.zodb.org/en/latest/documentation/tutorial.html

@fgregg fgregg closed this as completed Aug 27, 2015
@fgregg fgregg reopened this Jan 19, 2016
@fgregg
Copy link
Contributor Author

fgregg commented Apr 12, 2016

Right now the difficulty is in dealing with the incompatibilty between multiprocessing and standard ZODB.

This would be resolved if we used forkserver or spawn, because we don't actually do the multiprocessing until after getting a handle on the indexes.

@fgregg
Copy link
Contributor Author

fgregg commented Apr 12, 2016

Got a minimally working code here: 7e06593

This depends on https://github.com/zodb/relstorage/ which does not support python3. So that is a dead end.

@fgregg
Copy link
Contributor Author

fgregg commented Apr 12, 2016

Okay, I'm going to go another way.

I'm adding methods for reading and writing indices. These should be separate from reading and writing settings, because we usually want to write the indices after training, in particular after we index the real data.

I'm just pickling. When we tried to pickle the indices before, we ran into maximum recursion http://stackoverflow.com/questions/2134706/hitting-maximum-recursion-depth-using-pythons-pickle-cpickle

However, I can't get that error to reproduce. f56de14

@fgregg fgregg closed this as completed in 897e975 Apr 26, 2016
@fgregg
Copy link
Contributor Author

fgregg commented Oct 27, 2016

This reliably reproduces on mysql-example. The key thing we need to do is have an index that can be pickled or use a form of pickling that does not depend on recursion: zopefoundation/BTrees#44

@fgregg
Copy link
Contributor Author

fgregg commented May 3, 2018

In the meantime, we could provide a much more useful error message.

@fgregg fgregg mentioned this issue Mar 3, 2020
5 tasks
@fgregg
Copy link
Contributor Author

fgregg commented Mar 9, 2020

closed by #788

@fgregg fgregg closed this as completed Mar 9, 2020
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 8, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant