Commit Graph

18 Commits

Author SHA1 Message Date
Brad Fitzpatrick d87911b39a cloudstorage: fix StatBlobs
It was saying things existed (with size 0) when they didn't.
Also fix the TODO while I'm here and do multiple things in parallel.

Change-Id: Iff8b1e6470c41af9d3094dfb6ed7cc9d8f21b281
2014-08-17 13:53:36 -07:00
Brad Fitzpatrick a1fc7e5aea Don't use untagged struct literals.
Change-Id: I115592d815e6419eeffb5f23c3df953068d27371
2014-08-12 14:01:33 -07:00
Brad Fitzpatrick f2f7b01160 google cloud storage: support blobserver.Generationer
Change-Id: I9dd5bbaeb99e809bd4fff6f135d8141f4e1b051a
2014-08-02 21:55:57 -07:00
Brad Fitzpatrick 43a50b9fbf google cloudstorage: stat bucket at start. WIP.
Change-Id: Ia5c0981a1f31e347218d334a0748af19867b1adf
2014-08-02 21:00:43 -07:00
Brad Fitzpatrick 935bc81fe9 google cloud storage: add some sanity checks when using service accounts
Change-Id: I9fe5efcb75816d5c7770e589e2d102884e2e6131
2014-08-02 19:51:41 -07:00
Brad Fitzpatrick c3a3883395 googlecloudstorage: whren running on GCE, get access tokens automatically from the VM
Change-Id: Ibfcca0c52ff01a8f82bb0d3081119e0ac6e16ba9
2014-08-02 19:29:57 -07:00
mpl 38db35ede7 gdrive: fix missing err return, add docs
Change-Id: I340da620cf81dbb2f9878494da3f3b6ea10d19c9
2014-06-24 16:36:56 +02:00
jakubbrzeski e38dfda67a camtool: added googinit command
It initializes drive or googlestorage.
Deleted gsinit command.

Change-Id: I4d3b82018df9eec4d726cf91fd11be527c9a778a
2014-04-24 13:12:47 +02:00
Brad Fitzpatrick bf94a73859 Get rid of SeekFetcher vs StreamingFetcher distinction and complexity.
StreamingFetcher is now just Fetcher, and its FetchStreaming is now
just Fetch.

SeekFetcher is gone. Blobs are max 16 MB anyway, so we can slurp to
memory when needed. The main thing that cared about SeekFetcher
was the GET handler, ServeBlobref, because http.ServeContent needed
one for range requests. That's rewritten in an earlier commit, using
the FakeSeeker from another earlier commit.

Lot of code got simpler as a result.

Change-Id: Ib819413e48a8f9b8d97f596d0fbf771dab211f11
2014-03-14 12:29:13 -07:00
Tamás Gulácsi 97520583b8 Use 'uint32' instead of 'int64' for blob sizes everywhere.
Not just in blob.SizedRef, but in blobserver.Fetch and
blobserver.FetchStreaming, too.
Blobs have a max size of 10-32 MB anyway, and the index.Corpus is now using
uint32 to save memory.

Change-Id: I1172445c2f9463fdaee55bfe0f1218d44be4aa53
2014-02-08 17:58:12 +01:00
Brad Fitzpatrick b82b8efe4c Start of new context package and *context.Context type.
Will eventually be plumbed through lots of APIs, especially those requiring or benefiting from
cancelation notification and/or those needing access to the HTTP context (e.g. App Engine).

Change-Id: I591496725d620126e09d49eb07cade7707c7fc64
2013-12-02 13:20:51 -08:00
Brad Fitzpatrick 7b1261bd42 Fix two jsonconfig.Obj used without calling its Validate method
Change-Id: I4ddefd049b804c23c1f0a7727ecd76d1f2754232
2013-09-22 16:03:47 -07:00
Brad Fitzpatrick b24cad68dd Cleanup: remove BlobHub and time.Duration waits from storage interface
Move up a layer to the HTTP.  Also, start to remove ContextWrapper
stuff.  We've done it differently for App Engine instead, and will do
it differently yet moving forward.

Also add blobserver.Receive and use it in most places, moving checksum
verification up a layer.

Bunch of other cleanup and TODO fixing too.

Much simpler and cleaner.

Change-Id: I12e56c5d4e53bfcf82bdd8fb0b6d57c248ff605c
2013-08-21 13:57:28 -07:00
Burcu Dogan 6e6e910af1 Adding Google Drive as a storage backend experimentally. No cheap-enough way
of enumerating Drive files, needs to be fixed once Drive supports
range queries. Allows you to sync to /sto-googledrive/, but not from.

Change-Id: I6ac5ef02c5f51a6abdab5c207a3a5693c6bb8581
2013-08-17 15:30:02 +02:00
Brad Fitzpatrick 0bdf20884b all: delete pkg/blobref; convert all from *blobref.BlobRef to new blob.Ref
Change-Id: Id2dfb7f19452bedf4f3c9310b36227fd8117b225
2013-08-03 19:54:30 -07:00
Michael Zuffoletti c2669a6dfc issue 23: Fix google storage blobserver as sync dest
Change-Id: I33d88dc5028ebb76d4c17d2a00d8f8346114f876
2013-07-08 11:33:10 -05:00
Brad Fitzpatrick cf0d9aca6e More docs
Change-Id: I5c21f240c85bcf91fb67487cc172bf3faeb49fff
2013-07-07 18:52:14 -07:00
Brad Fitzpatrick 0714a463c9 Update from r60 to [almost] Go 1.
A lot is still broken, but most stuff at least compiles now.

The directory tree has been rearranged now too.  Go libraries are now
under "pkg".  Fully qualified, they are e.g. "camlistore.org/pkg/jsonsign".

The go tool cannot yet fetch from arbitrary domains, but discussion is
happening now on which mechanism to use to allow that.

For now, put the camlistore root under $GOPATH/src.  Typically $GOPATH
is $HOME, so Camlistore should be at $HOME/src/camlistore.org.

Then you can:

$ go build ./server/camlistored

... etc

The build.pl script is currently disabled.  It'll be resurrected at
some point, but with a very different role (helping create a fake
GOPATH and running the go build command, if things are installed at
the wrong place, and/or running fileembed generators).

Many things are certainly broken.

Many things are disabled.  (MySQL, all indexing, etc).

Many things need to be moved into
camlistore.org/third_party/{code.google.com,github.com} and updated
from their r60 to Go 1 versions, where applicable.

The GoMySQL stuff should be updated to use database/sql and the ziutek
library implementing database/sql/driver.

Help wanted.

Change-Id: If71217dc5c8f0e70dbe46e9504ca5131c6eeacde
2012-02-18 21:53:06 -08:00