Kefu Chai
9db9a99b59
ioctx: compiles on osx
...
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2017-10-17 19:44:47 +08:00
Noah Watkins
81e4191e13
Merge pull request #41 from damz/pr/rados-lock
...
Fix bogus duration handling in IOContext.Lock*
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-07-28 07:40:07 -07:00
Damien Tournoud
03facd6d90
Fix bogus duration handling in IOContext.Lock*
...
Signed-off-by: Damien Tournoud <damien@platform.sh>
2017-07-28 16:32:25 +02:00
Noah Watkins
25b1a318b3
doc: update readme
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-20 09:47:55 -08:00
Noah Watkins
616140cd3c
Merge pull request #36 from immesys/test-omap-enoent
...
Add test for ENOENT for omap
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-20 09:38:21 -08:00
Noah Watkins
022d69c468
ioctx: check high-level error first
...
the problem was that the C-API was returning an error, but the error
pointer (from the op) was getting -EIO. That makes sense as the outer
error was resulting in junk being decode somewhere.
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-20 09:36:07 -08:00
Michael Andersen
f40720f238
Add test for ENOENT for omap
2017-01-12 17:49:01 -08:00
Noah Watkins
a1c7418732
doc: fix travis link
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-12 15:23:11 -08:00
Noah Watkins
2f760b2b4d
Merge pull request #34 from ceph/ci
...
Ci
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-12 15:22:23 -08:00
Noah Watkins
3b0e26e76e
ci: set mon allow pool delete
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-12 15:19:14 -08:00
Noah Watkins
fd5c141175
ci: fixup ci for jewel and kraken
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2017-01-12 15:16:34 -08:00
Noah Watkins
dba6a108d6
Merge pull request #30 from codenrhoden/update_go_and_ceph_version
...
Update Dockerfile to Go 1.7.1 and Ceph Jewel
2016-10-04 15:19:48 -07:00
Travis Rhoden
aefb922d5d
Update Dockerfile to Go 1.7.1 and Ceph Jewel
...
This moves Go to 1.7.1, using Debian Jessie
Uses Ceph Jewel instead of Hammer
Uses download.ceph.com
Debian Jessie does not have `uuidgen` command by default, so
also needed to install uuid-runtime.
Signed-off-by: Travis Rhoden <trhoden@gmail.com>
2016-10-04 15:00:34 -07:00
Noah Watkins
c400c94a36
Merge pull request #29 from immesys/add-locks-rebased
...
rados: add support for object locking + test
2016-08-03 16:47:14 -07:00
Emmet Cassidy
628bae93d1
rados: add support for object locking + test
2016-08-03 15:50:34 -07:00
Noah Watkins
b900b94822
Merge pull request #25 from quantum/mon-command-inbuf
...
Add support for mon_command input buffer
2016-07-22 08:19:10 -07:00
Jared Watts
c08104a20f
Add support for mon_command input buffer
2016-07-21 13:07:30 -07:00
Noah Watkins
1cbeb759e2
Merge pull request #22 from david-z/wip-fix-list-lockers-crash
...
Fix rbd list lockers crashing
2016-05-20 07:34:18 -07:00
Noah Watkins
62e94854a4
Merge pull request #19 from abligh/fix-read-at-write-at-race
...
Replace ReadAt and WriteAt with thread-safe versions
2016-05-20 07:34:10 -07:00
Noah Watkins
e42fd909d4
Merge pull request #17 from ralfonso/ralfonso/list-children-fix
...
continue after -ERANGE in retval of rbd_list_children
2016-05-20 07:29:19 -07:00
Zhi Zhang
b68bd88243
Fix rbd list lockers crashing
...
Signed-off-by: Zhi Zhang <zhangz.david@outlook.com>
2016-05-20 17:26:29 +08:00
Alex Bligh
38c3c12b50
Replace ReadAt and WriteAt with thread-safe versions
...
ReadAt and WriteAt should not rely on image.offset as this
prevents the from working in a thread-safe manner.
Signed-off-by: Alex Bligh <alex@alex.org.uk>
2016-04-29 14:36:01 +01:00
Ryan Roemmich
777d9c72ab
continue after -ERANGE in retval of rbd_list_children. fix out of range on zero children
2016-04-05 10:23:09 -06:00
Noah Watkins
29d1ad9394
ioctx: fix integer cast
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2016-03-26 11:54:51 -07:00
Noah Watkins
8c0703f5e2
Merge remote-tracking branch 'origin/pr/15'
2016-03-26 11:52:02 -07:00
Noah Watkins
b6a7e80009
Merge remote-tracking branch 'origin/pr/14'
2016-03-26 11:49:28 -07:00
Noah Watkins
a82279dba8
Merge remote-tracking branch 'origin/pr/13'
2016-03-26 11:44:42 -07:00
Noah Watkins
b417966b36
Merge remote-tracking branch 'origin/pr/11'
2016-03-26 11:33:22 -07:00
Livio Soares
3d88c03e6e
rados: Change RadoError Error() interface to provide meaningful string, even for non-default cases GetRadosError().
...
I got a "rados: ret=-22" message as part of call I made. I'm a bit rusty with my
C stderror codes, which made the error a bit unhelpful.
This commit makes this particular error come out as "rados: invalid argument",
even if we don't need to explicitly create a Rados error variable for invalid
argument case. It does so by using C.strerror().
A further change is that with this, we do not need to explicitly code
RadosErrorNotFound and RadosErrorPermissionsDenied using a different error type
thank RadosError.
2016-03-26 11:50:03 -04:00
Livio Soares
f74dc6c3c6
rados: Use GetRadosError() in lieu of RadosError() so as to guarantee the translation of error codes into rados errors where applicable.
...
This commit fixes the TestObjectStat() case where a non existing object name is
tested for existance.
2016-03-25 00:59:18 -04:00
Livio Soares
57195e64fe
rados_test.go: Improve Stat() test for non existant object name.
...
The test currently fails since 'RadosErrorNotFound' is not properly returned.
2016-03-25 00:58:11 -04:00
Livio Soares
d5b49dd4ea
rados_test.go: Fix import header to allow `gofmt` to work.
2016-03-25 00:57:23 -04:00
Livio Soares
46f5d61aba
Namespace support for Pools.
...
This commit simply adds a SetNamespace() method to IOContext, allowing users to
perform pool operations in the context of a specific namespace.
2016-03-25 00:42:49 -04:00
Livio Soares
2d33c55c6b
rados: Fix iterator memory allocation; allocating a c_entry is not necessary and performed directly by the library.
2016-03-25 00:08:28 -04:00
Livio Soares
373a3043d7
rados: Implement Iter() interface to allow incremental listing of Pools.
...
The current IOContext struct has a ListObjects() method that works well for
pools with a reasonable number of objects. However, for very large pools, having
finer control over the iteration may be desirable.
This commit adds a new Iter() interface for pools. It allows callers to stop
iterating at any time by issuing a iter.Close(). It also allows callers to
"Seek" into the pool list using a token object.
2016-03-24 23:18:07 -04:00
Livio Soares
74d77ff49b
Fix rados.GetRadosError() interface to allow package-external use.
...
In Go, the "C" package is a special type of package that creates local symbols
names (non exportable) to the importing package. The result, in the case of
rados.GetRadosError() is that trying to use results in:
cannot use cerr (type C.int) as type rados.C.int in argument to rados.GetRadosError
It seems that "C.int" within 'rados' namespace produces a symbol of the type
`_Ctype_int`, which given it's first character `_` is not exported. As such, we
have the type being defined as `rados._Ctype_int`, which is not accessible
outside of the rados package.
This commit changes the interface to use the native Go `int` type.
2016-03-24 22:37:52 -04:00
Livio Soares
6f8cc46f47
rados/conn: Fix passing of Go allocated pointer to CGO function in MonCommand(), which panics Go 1.6.
...
Addresses issue #10 .
2016-03-24 22:13:09 -04:00
Livio Soares
5133b0eaa2
Dockerfile: upgrade Go from 1.3 to 1.6.
2016-03-24 22:08:55 -04:00
Crazykev
ee740834a2
add param 'order' to Create() and Image.Clone(), and upgrade ci ceph version to hammer
...
Signed-off-by: Crazykev <crazykev@zju.edu.cn>
2016-03-03 21:59:09 -05:00
Noah Watkins
0e703bba9c
Merge branch 'append'
...
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-10-30 13:05:21 -07:00
Emmet Cassidy
f251b539c3
added append function and a test
2015-10-28 09:25:11 -07:00
Noah Watkins
75b327e4c7
Merge pull request #1 from ceph/update-paths
...
repo: update new repo path
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-08-31 08:35:56 -06:00
Noah Watkins
3f52ea219a
repo: update new repo path
...
noahdesu -> ceph
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-08-31 07:34:42 -07:00
Noah Watkins
f9be60af9f
Merge pull request #26 from hustcat/err_code
...
Convert some C error code to Go code
2015-07-24 09:24:36 -07:00
Ye Yin
5c2d42ef5a
Change return new error for rados and rbd
...
Signed-off-by: Ye Yin <eyniy@qq.com>
2015-07-24 11:34:18 +08:00
Ye Yin
193dbacdb0
Convert some C error code to Go code, for convenient Golang code to handle error.
...
Define some Rbd constant variables, to pass to librbd API.
Add test unit for RbdErrorNotFound
Signed-off-by: Ye Yin <eyniy@qq.com>
2015-07-23 15:33:34 +08:00
Noah Watkins
a0f3c26798
Merge pull request #24 from hustcat/parent_info
...
Add rbd_get_parent_info for image
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-07-20 07:31:03 -06:00
Noah Watkins
cd051751e4
Merge pull request #27 from hustcat/rados_write_full
...
Add rados_write_full function
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2015-07-20 07:23:42 -06:00
Ye Yin
f39179553f
Add rados_write_full function
...
Signed-off-by: Ye Yin <eyniy@qq.com>
2015-07-20 20:37:32 +08:00
Ye Yin
80e3e9ea7f
Add rbd_get_parent_info
...
Signed-off-by: Ye Yin <eyniy@qq.com>
2015-07-20 11:34:47 +08:00