Changeset: 06126c783aaf for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=06126c783aaf Modified Files: tools/merovingian/ChangeLog.Jul2012 tools/merovingian/daemon/discoveryrunner.c Branch: Jul2012 Log Message:
removeRemoteDB: fix crash when removing the only db in the list linked lists can be hard sometimes :( Fix crash observed in bug #3135. The first (and only) database in the remote list was removed and lead to a segfault due to a logic error. diffs (29 lines): diff --git a/tools/merovingian/ChangeLog.Jul2012 b/tools/merovingian/ChangeLog.Jul2012 --- a/tools/merovingian/ChangeLog.Jul2012 +++ b/tools/merovingian/ChangeLog.Jul2012 @@ -1,6 +1,9 @@ # ChangeLog file for sql/src/backends/monet5/merovingian # This file is updated with mchangelog +* Thu Aug 2 2012 Fabian Groffen <[email protected]> +- Fixed a crash of monetdbd when local databases were unshared, bug #3135 + * Wed Jul 18 2012 Fabian Groffen <[email protected]> - Resolved a problem where automatic starting of a database initiated by multiple clients at the same time could cause failed starts. Bug #3107 diff --git a/tools/merovingian/daemon/discoveryrunner.c b/tools/merovingian/daemon/discoveryrunner.c --- a/tools/merovingian/daemon/discoveryrunner.c +++ b/tools/merovingian/daemon/discoveryrunner.c @@ -94,7 +94,11 @@ removeRemoteDB(const char *dbname, const /* in the future, there may be more, so keep looking */ } prv = rdb; - rdb = rdb->next; + if (rdb == NULL) { + rdb = _mero_remotedbs; + } else { + rdb = rdb->next; + } } pthread_mutex_unlock(&_mero_remotedb_lock); _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
