IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
this patch avoids setting of duplicate key/value pairs in the context.
note that consumers have to explicitly check for previous existance of key
to avoid any kind of resource leak resulting from this overwrite.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
inode_ctx_get was being passed a xlator_t type
that was initialized to NULL resulting in a
EINVAL return from glusterfs_fstat.
Reported on gluster-devel
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
- create missing directories instead of creating linkfiles when
entry missing on hashed subvol
- detect cases where there are dirs and linkfiles for a name and
make them all dirs
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Fixed the warning message to be more clearer for return of the null by CALLOC, by changing old to newdata.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
posix_unlink follows the below procedure to avoid client noticing delay during
unlink of large file
1. open file
2. unlink file
3. stack_unwind
4. close file
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Discard earlier patch sent for the same error. This patch fixes
it more comprehensively.
This solves the spurious split-brain seen by many users.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
in wb_flush, there was a chance that wb_process_queue()
was called with NULL frame, which causes crash.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
patch solves the problem of fds being valid even in the case of server
disconnection, which causes operations on wrong fd when server comes back up.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
When a hashed subvolume is down, variable 'subvol' was NULL, but was sent to itransform.
This patch solves this, and readdir is sent to proper subvolume now.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
We must add a 'return' after a STACK_UNWIND due to a stub creation
failure, because if we dont, we'll end up adding a NULL stub to the
worker thread request queue.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
This way, users will be aware which are in 'beta' stage, and we can keep on
adding new translators (if any) seemlessly to stable codebase and once tested
can move them to proper places.
To use these translators, everyone will have to prefix 'testing/' to existing
type of translator (in volumefile)
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
With this patch, to specify recv-size and send-size of ib-verbs to <n>KB, we need not give
the option as integer value of 'n * 1024' value. This is neater to do deployments.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
This patch does two things:
1. Cleans up the request scheduling and queueing interface so that all
fops only need to call iot_schedule and not iot_queue and in some
cases iot_schedule.
2. Till now, we've had open and create calls go through the main
glusterfsd thread when sending open and create fops. This patch makes
them also go through the worker threads. But since the open and
creates requests would not be called with a valid inode number in the
loc_t, these requests will get assigned to the worker at index 0.
This will be fixed RSN, when we introduce various techniques of
distributing the inodes(..not requests..) over the worker threads.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Worker threads were represented as a list in iot_conf_t
which made us traverse the list of workers in order to
decide which thread gets the request. Now we represent the
workers as a dynamically allocated array so that we can just index
into the array to schedule the file.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
This patch changes the per-thread request queue from a custom circular
linked list, into the standard list.h list which is easier to
understand and has a cleaner interface.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
- syscall.c provides platform-independent system calls
- previous code for this from compat.c removed
- posix xlator uses new functions from syscall.c
- solaris_flistxattr added to compat.c
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
- the execution order of fops like read, stat, fsync, truncate etc whose results
are affected by writes, are preserved.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
- the execution order of fops like read, stat, fsync, truncate etc whose results
are affected by writes, are preserved.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
'if (!opt->value)' always fails as 'value' member is an array of size ZR_OPTION_MAX_ARRAY_SIZE and is always non-null. it should have been 'if (opt->value[0] == NULL)' instead.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
This feature enables exported directory containing different mountpoints.
With, 'option span-devices <n>' where n is number of different mountpoints
export directories can have, one can enable this feature. By default the
number will be 1, and the inode scaling won't come into picture.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
ioc_create_cbk was holding inode->lock and calling inode_ctx_put,
which also holds the same lock.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
This patch fixes the 'hang' effect when client protocol fails to authenticate
to servers (it may be problem with volume file, or server process would have
not started yet).
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
noticed that if anyone pulls from git repo, the version says 'tla' and
patchset also shows tla's patch.
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>