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!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
existing ctdb_call() mechanism isn't sufficient. The main problem is
that the operations on the record need to be done with a lock held
while a local posix file operation is happening. We can't use a
ctdb_call callback function to do the actual file opens, renames,
unlinks etc as the callback would run on the wrong node.
So this commit adds the prototypes for two new ctdb API functions
which will make a opendb backend easier. Volker will probably
recognise these functions as they are basically the same as what he
did in his earlier Samba clustering code :-)
(This used to be commit d9a997fd39)
handling messages to remote nodes. Implemented dummy functions in the
'local' cluster backend for the messaging hooks, and modified the
messaging layer to check if the destination is remote and redirect
messages via the cluster layer
(This used to be commit 4474552e8f)
complex once we have code for changing the number of nodes)
- fixed a ctdb/tcp bug in the handling of multiple packets waiting on
a socket
(This used to be commit faf9a1146c)
rather than allocating a reply_data field each time, I have changed
the ctdb_call API to include a status code. That greatly simplifies
use of the API.
(This used to be commit 70c3acaf88)
calculations. It will be interesting to see how portable this is.
The advantage over the sizeof() method is that it avoids padding
problems after the data[1] array. That was causing us to get valgrind
errors.
(This used to be commit fd8e460439)
to track down some uninitialised memory (sometimes valgrind gets the
offset wrong, writing to /dev/null 1 byte at a time avoids this)
(This used to be commit 4bf741b567)
- this fix looks really ugly but I don't know a better solution...
if we would use uint8_t *data; then we would send the pointer value
also in the network packet and we would need to initialize
s->data = ((void *)(&s->data) + 1;
to make the memcpy statements work as they're currently,
so we use uint8_t data[1] in the struct definition ...
tridge: please review careful!
hopefully fix the build on solaris and HPUX
metze
(This used to be commit 015097677c)
at the moment the brlock_ctdb backend will sometimes fail after
dmaster migrations. So to pass tests this needs to be set high. Thats
a priority to fix.
(This used to be commit 45f5c272f3)