Changeset: 3a1ed1ef11b7 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3a1ed1ef11b7 Modified Files: tools/merovingian/daemon/merovingian.c Branch: Dec2011 Log Message:
Merged from Aug2011 diffs (44 lines): diff --git a/tools/merovingian/ChangeLog.Aug2011 b/tools/merovingian/ChangeLog.Aug2011 --- a/tools/merovingian/ChangeLog.Aug2011 +++ b/tools/merovingian/ChangeLog.Aug2011 @@ -1,3 +1,7 @@ # ChangeLog file for sql/src/backends/monet5/merovingian # This file is updated with mchangelog +* Sun Nov 6 2011 Fabian Groffen <[email protected]> +- Fixed a bug where monetdbd's socket files from /tmp were removed when + a second monetdbd was attempted to be started using the same port. + diff --git a/tools/merovingian/daemon/merovingian.c b/tools/merovingian/daemon/merovingian.c --- a/tools/merovingian/daemon/merovingian.c +++ b/tools/merovingian/daemon/merovingian.c @@ -1024,8 +1024,6 @@ main(int argc, char *argv[]) msab_init(dbfarm, NULL); - unlink(control_usock); - unlink(mapi_usock); /* write out the pid */ Mfprintf(pidfile, "%d\n", (int)d->pid); @@ -1038,6 +1036,7 @@ main(int argc, char *argv[]) /* open up connections */ if ( (e = openConnectionTCP(&sock, port, stdout)) == NO_ERR && + (unlink(control_usock) | unlink(mapi_usock) | 1) && (e = openConnectionUNIX(&socku, mapi_usock, 0, stdout)) == NO_ERR && (discovery == 1 && (e = openConnectionUDP(&usock, port)) == NO_ERR) && (e = openConnectionUNIX(&unsock, control_usock, S_IRWXO, _mero_ctlout)) == NO_ERR @@ -1108,10 +1107,10 @@ main(int argc, char *argv[]) } /* control channel is already closed at this point */ - if (unlink(control_usock) == -1) + if (unsock != -1 && unlink(control_usock) == -1) Mfprintf(stderr, "unable to unlink control socket '%s': %s\n", control_usock, strerror(errno)); - if (unlink(mapi_usock) == -1) + if (socku != -1 && unlink(mapi_usock) == -1) Mfprintf(stderr, "unable to unlink mapi socket '%s': %s\n", mapi_usock, strerror(errno)); _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
