Filippos Giannakos [Wed, 5 Jun 2013 09:52:37 +0000 (12:52 +0300)]
Merge branch 'debian-develop' into debian
Filippos Giannakos [Wed, 5 Jun 2013 09:43:11 +0000 (12:43 +0300)]
Merge branch 'debian-release-0.3' into debian-develop
Filippos Giannakos [Wed, 5 Jun 2013 09:26:26 +0000 (12:26 +0300)]
Bump version to 0.3-1
Signed-off-by: Filippos Giannakos <philipgian@grnet.gr>
Filippos Giannakos [Wed, 5 Jun 2013 09:25:37 +0000 (12:25 +0300)]
Merge branch 'release-0.3' into debian-release-0.3
Filippos Giannakos [Wed, 5 Jun 2013 09:21:30 +0000 (12:21 +0300)]
Bump version to 0.3
Filippos Giannakos [Mon, 3 Jun 2013 14:43:06 +0000 (17:43 +0300)]
Bump version.
Bumped version to 0.3rc2
Filippos Giannakos [Fri, 31 May 2013 09:32:28 +0000 (12:32 +0300)]
peer.c: Call custom peer finalize with st_threads
Filippos Giannakos [Fri, 31 May 2013 08:46:43 +0000 (11:46 +0300)]
bench: Fix target to not include null termination.
Request of the target must not be null terminated. Remove null termination from
the requests constructed by peers.
Filippos Giannakos [Fri, 31 May 2013 08:19:10 +0000 (11:19 +0300)]
mapperd: Add debug messages for copyup target
Filippos Giannakos [Fri, 31 May 2013 07:09:28 +0000 (10:09 +0300)]
mapperd: Fix signaling bug when load/open fails.
When a map load/open fails, any other threads that tried to get the map during
these operations wait on the map. If any of these operations fail, the cache was
dropped, without signaling any of the waiters. This commit fixes this bug, by
signaling the map when open or load fail.
Filippos Giannakos [Thu, 30 May 2013 15:23:09 +0000 (18:23 +0300)]
mapperd: Add debug message to signal map and put map
Filippos Giannakos [Thu, 30 May 2013 13:45:50 +0000 (16:45 +0300)]
Rename archipelago peers with archip- prefix
Filippos Giannakos [Thu, 30 May 2013 13:38:49 +0000 (16:38 +0300)]
Change ext_script dir to archipelago.
Change ext_script ganeti directory from vlmc to archipelago.
Filippos Giannakos [Thu, 30 May 2013 09:40:52 +0000 (12:40 +0300)]
Bump version.
Bump versio to 0.3rc1
Filippos Giannakos [Fri, 17 May 2013 14:36:00 +0000 (17:36 +0300)]
Adjust mt-sosd to the new RADOS lock API.
Filippos Giannakos [Thu, 30 May 2013 09:43:08 +0000 (12:43 +0300)]
Update librados dependencies.
Update librados dependencies to v0.61.2+grnet2.
Filippos Giannakos [Thu, 30 May 2013 09:30:10 +0000 (12:30 +0300)]
Merge branch 'debian-release-0.2' into debian
Filippos Giannakos [Thu, 30 May 2013 09:29:02 +0000 (12:29 +0300)]
Merge branch 'release-0.2' into debian-release-0.2
Filippos Giannakos [Thu, 30 May 2013 09:27:45 +0000 (12:27 +0300)]
Merge branch 'develop' into debian-develop
Filippos Giannakos [Wed, 29 May 2013 12:28:44 +0000 (15:28 +0300)]
xseg: Set serviced = 0 on {get, put} request
Filippos Giannakos [Fri, 24 May 2013 14:08:03 +0000 (17:08 +0300)]
xseg.h: Move end of include guard to the header's end.
Filippos Giannakos [Fri, 17 May 2013 15:10:37 +0000 (18:10 +0300)]
Merge branch 'debian-develop-cherrypick' into debian-develop
Merged commits cherry-picked from debian-release-0.2 branch
Filippos Giannakos [Fri, 17 May 2013 15:08:52 +0000 (18:08 +0300)]
Merge branch 'develop-cherrypick' into develop
Merged commits cherry-picked from release-0.2 branch
Filippos Giannakos [Fri, 19 Apr 2013 08:48:58 +0000 (11:48 +0300)]
Fix bug in mapperd.
When signaling map, use signal_broadcast to wake up all waiters instead of just
one, to avoid missing signals when cached is dropped for the map.
(cherry picked from commit
2b91a67a55cdd9b6a16fd54e3e87389aa181a7ee)
Filippos Giannakos [Wed, 17 Apr 2013 13:36:31 +0000 (16:36 +0300)]
Add wrapper function for ST peerd loop.
(cherry picked from commit
d932df7a6a3ae8b17d9e0981fcb3ee2af059324c)
Conflicts:
xseg/peers/user/peer.c
Filippos Giannakos [Wed, 17 Apr 2013 12:38:02 +0000 (15:38 +0300)]
mapperd: Always sleep before checking request state.
(cherry picked from commit
e0f306aa00f5aefa72dc4f607876ee87ddc2ea37)
Filippos Giannakos [Mon, 15 Apr 2013 12:45:42 +0000 (15:45 +0300)]
Make xseg request state volatile
(cherry picked from commit
8904f78564a1d1f96eb0453e7773779dc931d861)
Filippos Giannakos [Mon, 15 Apr 2013 09:35:47 +0000 (12:35 +0300)]
Make peers close stdin when entering daemon mode.
(cherry picked from commit
04ea45339fd0e5a92c3290807805766acc1e7223)
Filippos Giannakos [Mon, 15 Apr 2013 08:31:53 +0000 (11:31 +0300)]
Close orig stdout, stderr, when logging to file
(cherry picked from commit
1eeb0111a9d7ac5700d7aedc9f442b748b9cb8e7)
Filippos Giannakos [Mon, 15 Apr 2013 08:30:03 +0000 (11:30 +0300)]
Add wait time while starting a peer.
While starting a peer, wait a few seconds, before checking if the peer is up n
running. In high load conditions, this check was too soon and could fail,
resulting in an overall start failure.
(cherry picked from commit
1b4a1ad9cd39b620b35bd30970edda304fcb92a6)
Filippos Giannakos [Mon, 8 Apr 2013 15:37:23 +0000 (18:37 +0300)]
Remove async unsafe functions from signal handlers
(cherry picked from commit
2d2a24a26ff9f3a7fd651b1c2386fbd31166a5e1)
Filippos Giannakos [Mon, 8 Apr 2013 15:37:00 +0000 (18:37 +0300)]
Fix bug in user xseglog2
(cherry picked from commit
c30767e3f311fd97bb1f5f546b8654911d712072)
Filippos Giannakos [Mon, 8 Apr 2013 10:52:28 +0000 (13:52 +0300)]
Fix user space logrotation bug.
Replace file stream functions in user space logging with their file descriptor
counter parts, which are safe to be called from a signal handler.
(cherry picked from commit
342ac1dc1a5ebc9aef55808b2d42436be3efb88d)
Filippos Giannakos [Tue, 26 Mar 2013 11:44:53 +0000 (13:44 +0200)]
Remove ctypeslib dependency from python-xseg
(cherry picked from commit
93f23c27d9567647a27a035732edd2a4ef66d83c)
Filippos Giannakos [Fri, 22 Mar 2013 11:17:23 +0000 (13:17 +0200)]
Move src dir to archipelago-modules-dkms
(cherry picked from commit
9c39a188e8ff0ae49ecb7f6587b693c5a546289a)
Filippos Giannakos [Thu, 21 Mar 2013 14:14:45 +0000 (16:14 +0200)]
Export KVER if none existing.
Also modulesdir now points to the KVER we are building for.
(cherry picked from commit
201e6354bbe2f6f4a4d921992a425e32444514fa)
Filippos Giannakos [Thu, 21 Mar 2013 13:40:25 +0000 (15:40 +0200)]
Add xseg to src dir.
(cherry picked from commit
0e4ae29f8d36524c61720a7f1dcafcdc9cd6bb03)
Alex Pyrgiotis [Tue, 7 May 2013 12:22:34 +0000 (15:22 +0300)]
peer: Move peerd_loop plug out of peer_reqs loop
The plugging of generic_peerd_loop to peerd_loop was falsely done inside
a loop where peer_reqs were initialized. The plugging has now been moved
out of this loop.
Alex Pyrgiotis [Tue, 23 Apr 2013 12:55:46 +0000 (15:55 +0300)]
bench: Flush stdout when printing progress results
Filippos Giannakos [Mon, 8 Apr 2013 11:04:22 +0000 (14:04 +0300)]
Fix logrotate script.
In case a log rotation is performed, but no pid file exists, continue
gracefully.
(cherry picked from commit
c992d813a6fb3688f7bacfef5f962925a7c89c07)
Filippos Giannakos [Fri, 22 Mar 2013 14:54:06 +0000 (16:54 +0200)]
Fix archipelago modules virtual package
(cherry picked from commit
9a99eb513cb82c521d5f9b7f6e476f5032dc5341)
Filippos Giannakos [Fri, 22 Mar 2013 13:58:17 +0000 (15:58 +0200)]
Archipelago-modules produce changes file.
(cherry picked from commit
2223e1aa32e57a74d52f476a11b18416b6d8de1b)
Filippos Giannakos [Fri, 22 Mar 2013 12:57:39 +0000 (14:57 +0200)]
Recomment m-a for archipelago-modules-source
(cherry picked from commit
bbfde5020179ff192f65b9bf7ccd9c4f44d2f87f)
Filippos Giannakos [Fri, 22 Mar 2013 11:16:51 +0000 (13:16 +0200)]
Rename archipelago-kernel-dkms to archipelago-modules-dkms
(cherry picked from commit
5e50744e85fd4b31fc78260b71071439f14a3563)
Filippos Giannakos [Thu, 21 Mar 2013 13:38:34 +0000 (15:38 +0200)]
Modify modules packages.
Modify dkms directory.
Addo archipelago-modules-source package.
(cherry picked from commit
3e53eb468d3e8c05d5f2a8e13ff195896bf5d769)
Filippos Giannakos [Fri, 19 Apr 2013 08:48:58 +0000 (11:48 +0300)]
Fix bug in mapperd.
When signaling map, use signal_broadcast to wake up all waiters instead of just
one, to avoid missing signals when cached is dropped for the map.
Filippos Giannakos [Fri, 19 Apr 2013 08:48:10 +0000 (11:48 +0300)]
Bump version.
Bumped version to 0.2rc10
Alex Pyrgiotis [Thu, 18 Apr 2013 15:34:17 +0000 (18:34 +0300)]
bench: Fix issuing of read/write requests
Due to no initialization of struct bench, some "ifs" in the code would
show different behavior depending on the junk values they would check.
Now however, there is proper initialization of struct bench.
Alex Pyrgiotis [Wed, 17 Apr 2013 11:30:02 +0000 (14:30 +0300)]
bench: Include bandwidth and IOPS in results
Alex Pyrgiotis [Wed, 17 Apr 2013 11:24:17 +0000 (14:24 +0300)]
bench: Change prefixes of static functions
In this repo, a static helpder function is prefixed with "__". However,
some static helper functions in bench-utils.c where prefixed with a
single underscore ("_"), so we updated their names to be consistent with
this convention.
Alex Pyrgiotis [Fri, 15 Mar 2013 15:43:03 +0000 (17:43 +0200)]
Add progress report for bench
Progress report is turned on by default. It reports every 5% the current
request status.
Also, we now make sure to terminate only if all peer requests are free.
Filippos Giannakos [Wed, 17 Apr 2013 13:36:31 +0000 (16:36 +0300)]
Add wrapper function for ST peerd loop.
Filippos Giannakos [Wed, 17 Apr 2013 12:38:02 +0000 (15:38 +0300)]
mapperd: Always sleep before checking request state.
Filippos Giannakos [Wed, 17 Apr 2013 12:37:31 +0000 (15:37 +0300)]
Bump version
Bumped version to 0.2rc9
Filippos Giannakos [Mon, 15 Apr 2013 12:45:42 +0000 (15:45 +0300)]
Make xseg request state volatile
Filippos Giannakos [Mon, 15 Apr 2013 09:35:47 +0000 (12:35 +0300)]
Make peers close stdin when entering daemon mode.
Filippos Giannakos [Mon, 15 Apr 2013 08:31:53 +0000 (11:31 +0300)]
Close orig stdout, stderr, when logging to file
Filippos Giannakos [Mon, 15 Apr 2013 08:30:03 +0000 (11:30 +0300)]
Add wait time while starting a peer.
While starting a peer, wait a few seconds, before checking if the peer is up n
running. In high load conditions, this check was too soon and could fail,
resulting in an overall start failure.
Filippos Giannakos [Thu, 11 Apr 2013 13:52:45 +0000 (16:52 +0300)]
Bump version
Bumped version to 0.2rc8
Filippos Giannakos [Mon, 8 Apr 2013 15:37:23 +0000 (18:37 +0300)]
Remove async unsafe functions from signal handlers
Filippos Giannakos [Mon, 8 Apr 2013 15:37:00 +0000 (18:37 +0300)]
Fix bug in user xseglog2
Filippos Giannakos [Mon, 8 Apr 2013 15:36:37 +0000 (18:36 +0300)]
Bump version
Bumped version to 0.2rc7
Filippos Giannakos [Mon, 8 Apr 2013 11:04:22 +0000 (14:04 +0300)]
Fix logrotate script.
In case a log rotation is performed, but no pid file exists, continue
gracefully.
Filippos Giannakos [Mon, 8 Apr 2013 10:52:28 +0000 (13:52 +0300)]
Fix user space logrotation bug.
Replace file stream functions in user space logging with their file descriptor
counter parts, which are safe to be called from a signal handler.
Filippos Giannakos [Sat, 6 Apr 2013 16:27:41 +0000 (19:27 +0300)]
Bump version.
Bumped version to 0.2rc6
Filippos Giannakos [Tue, 26 Mar 2013 11:45:41 +0000 (13:45 +0200)]
Bump version.
Bumped version to 0.2rc5
Filippos Giannakos [Tue, 26 Mar 2013 11:44:53 +0000 (13:44 +0200)]
Remove ctypeslib dependency from python-xseg
Filippos Giannakos [Fri, 22 Mar 2013 14:54:06 +0000 (16:54 +0200)]
Fix archipelago modules virtual package
Filippos Giannakos [Fri, 22 Mar 2013 13:58:17 +0000 (15:58 +0200)]
Archipelago-modules produce changes file.
Filippos Giannakos [Fri, 22 Mar 2013 12:57:39 +0000 (14:57 +0200)]
Recomment m-a for archipelago-modules-source
Filippos Giannakos [Fri, 22 Mar 2013 11:17:23 +0000 (13:17 +0200)]
Move src dir to archipelago-modules-dkms
Filippos Giannakos [Fri, 22 Mar 2013 11:16:51 +0000 (13:16 +0200)]
Rename archipelago-kernel-dkms to archipelago-modules-dkms
Filippos Giannakos [Fri, 22 Mar 2013 10:52:41 +0000 (12:52 +0200)]
Bump version.
Bumped version to 0.2rc4.
Filippos Giannakos [Thu, 21 Mar 2013 13:38:34 +0000 (15:38 +0200)]
Modify modules packages.
Modify dkms directory.
Addo archipelago-modules-source package.
Filippos Giannakos [Thu, 21 Mar 2013 14:14:45 +0000 (16:14 +0200)]
Export KVER if none existing.
Also modulesdir now points to the KVER we are building for.
Filippos Giannakos [Thu, 21 Mar 2013 13:40:25 +0000 (15:40 +0200)]
Add xseg to src dir.
Alex Pyrgiotis [Thu, 14 Mar 2013 16:29:23 +0000 (18:29 +0200)]
Add a fallback clock for portability reasons
Filippos Giannakos [Thu, 14 Mar 2013 16:00:33 +0000 (18:00 +0200)]
Merge branch 'feature-improvepeer' into develop
Filippos Giannakos [Thu, 14 Mar 2013 13:34:37 +0000 (15:34 +0200)]
Remove unused stuff and reduce warnings
Remove unused pthread_* stuff and modify variable location to reduce warnings
because of the define-based compilation.
Filippos Giannakos [Thu, 14 Mar 2013 11:41:24 +0000 (13:41 +0200)]
Add compilation warning about MT and ST_THREADS
Filippos Giannakos [Thu, 14 Mar 2013 11:03:03 +0000 (13:03 +0200)]
Fix queue size of per thread queue.
Filippos Giannakos [Thu, 14 Mar 2013 09:27:34 +0000 (11:27 +0200)]
Fix peer termination.
Peer checks if all peer requests are free in all thread, and then proceeds to
gracefull shutdown.
Also introduce pthread specific variable, holding the struct thread for each
thread.
Filippos Giannakos [Wed, 13 Mar 2013 11:45:10 +0000 (13:45 +0200)]
Split peer request queues.
Each thread has its own peer request queue, frow which it allocates data. If
this queue is empty, it tries to "steal" from the "next" thread. This greatly
reduces lock congestion to the peer request queue.
Filippos Giannakos [Fri, 8 Mar 2013 17:10:54 +0000 (19:10 +0200)]
Add check to not respond request if none associated.
Conflicts:
xseg/peers/user/peer.c
Filippos Giannakos [Thu, 14 Mar 2013 16:00:04 +0000 (18:00 +0200)]
Merge branch 'feature-improvepthreadsignaling' into develop
Filippos Giannakos [Thu, 14 Mar 2013 09:20:42 +0000 (11:20 +0200)]
Improve pthread signaling.
Remove xpool data type that required a lock on insertion / on seek and replace
it by an array of pids. On the array of pids, each thread place its pid in his
own reserved entry. Any one who wishes to signal a pthread peer, checks that
array for a valid pid.
Filippos Giannakos [Thu, 14 Mar 2013 09:12:26 +0000 (11:12 +0200)]
Disable update stamp during request transfer.
Alex Pyrgiotis [Thu, 14 Mar 2013 15:51:49 +0000 (17:51 +0200)]
Fix clean option in Makefile
Filippos Giannakos [Thu, 14 Mar 2013 10:14:03 +0000 (12:14 +0200)]
Merge branch 'develop' into debian-develop
Filippos Giannakos [Thu, 14 Mar 2013 10:11:36 +0000 (12:11 +0200)]
Merge branch 'feature-bench-rebased' into develop
Filippos Giannakos [Thu, 14 Mar 2013 10:10:32 +0000 (12:10 +0200)]
Build only the necessary peers.
Alex Pyrgiotis [Wed, 13 Mar 2013 18:14:57 +0000 (20:14 +0200)]
Fix LFSR spin bug
Alex Pyrgiotis [Wed, 13 Mar 2013 16:04:35 +0000 (18:04 +0200)]
Style changes
Alex Pyrgiotis [Wed, 13 Mar 2013 16:00:29 +0000 (18:00 +0200)]
Add option for read/write ops to hit unique objs
Read/write ops can now use the -to option, instead of the -ts option, to
make each read/write request touch a different object.
Alex Pyrgiotis [Wed, 13 Mar 2013 13:12:10 +0000 (15:12 +0200)]
Add request cap
Implemented by popular request, the request cap option allows the
benchmarking peer to stop the benchmark earlier, at a given number
of received requests.
Alex Pyrgiotis [Wed, 13 Mar 2013 11:52:42 +0000 (13:52 +0200)]
Fix verification full mode
Alex Pyrgiotis [Tue, 12 Mar 2013 16:29:54 +0000 (18:29 +0200)]
Add partial support for verification
Adds an option to choose between verification modes:
1. meta: On this mode, we write our signature both at the start and the
end of the chunk size. It should be very fast and moderately safe,
due to the fact that corruptions happen it the chunk's edges.
2. full: Write our a random sequence of numbers throughout the chunk's
data range, which is reproducible given the object name and the
offset inside the object.
At the moment, only meta mode is available, but full will be supported
soon
Alex Pyrgiotis [Tue, 12 Mar 2013 16:16:50 +0000 (18:16 +0200)]
Refactor struct bench and appropriate code paths
Changes:
1. Move flag values (such as pattern, insanity, verify) in a specific
bit-field.
2. Create a struct req_status where the status of requests will be
stored.
3. Tidy up code.
Rationale:
1. For parameters that can have only a few different values, it's an
overkill to use a specific field in struct bench to store them, when
we can just as well store them in a flag. This reduces the size of
struct bench and makes the code easier to grasp.
2. Previously, the requests' statuses would be scattered amongst
different timers, which is counter-intuitive at best. By placing them
in a specific struct, we make the code more intuitive and readable.
Alex Pyrgiotis [Sun, 10 Mar 2013 23:37:52 +0000 (01:37 +0200)]
Add skeleton for verification in write path
Alex Pyrgiotis [Sun, 10 Mar 2013 11:49:25 +0000 (13:49 +0200)]
Improve LFSR implementation
Also, prepare the code for the addition of verification support