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

Move cgo files to main package directory #23

Merged
merged 6 commits into from
Apr 17, 2016

Conversation

jsha
Copy link
Contributor

@jsha jsha commented Apr 14, 2016

Per tools/godep#422, godep won't find cgo files in other directories, so this fix is required for vendoring to work properly.

jsha and others added 6 commits November 4, 2015 17:07
use a specific error for out of date hashes
This introduces a new fsLock that will lock around both the updates and
the file system effects to allow code reading from the tries to make
forward motion while preventing other filesystem modifications at the
same time.

It also moves the updateLock to updateLookupMap.

Depending on how heavy the trie operations are in updateLookupMap and
how large the tries get, we may want to either a) clone the tries and
then pointer swap them in or b) make the locks occur only around each
exact operation. For instance, in the PREFIX_4B_SZ, CHUNK_TYPE_SUB case,
we could allow the Lookup.Delete to occur in a write lock, take a read
lock to pull the data from the FullHashes iterator, and only then go
back with a write lock around with a write lock around each individual
FullHashes.Delete.

Since all of this happens under fsLock, we don't have worry about multiple
SafeBrowsingList.load calls stomping on each other's toes.
only lock updates around the actual update
update to the latest rjohnsondev/master
Per tools/godep#422, godep won't find cgo files in
other directories, so vendoring won't work without this fix.
@rjohnsondev rjohnsondev merged commit da4d017 into rjohnsondev:master Apr 17, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants