fi
-# convert for transactions (if very old DB)
-cat <<EOF | mysql -u lbserver $DB_NAME
-ALTER TABLE jobs ENGINE=innodb;
-ALTER TABLE users ENGINE=innodb;
-ALTER TABLE events ENGINE=innodb;
-ALTER TABLE short_fields ENGINE=innodb;
-ALTER TABLE long_fields ENGINE=innodb;
-ALTER TABLE states ENGINE=innodb;
-ALTER TABLE status_tags ENGINE=innodb;
-ALTER TABLE server_state ENGINE=innodb;
-ALTER TABLE acls ENGINE=innodb;
-ALTER TABLE notif_registrations ENGINE=innodb;
-ALTER TABLE notif_jobs ENGINE=innodb;
-EOF
+# convert for transactions (if needed and very old DB)
+for table in jobs users events short_fields long_fields states status_tags server_state acls notif_registrations notif_jobs; do
+ echo "SHOW CREATE TABLE $table;" | mysql -u lbserver $DB_NAME | grep -i ENGINE | grep -i InnoDB >/dev/null
+ if [ $? != 0 ]; then
+ echo "ALTER TABLE $table ENGINE=InnoDB" | mysql -u lbserver $DB_NAME
+ fi
+done
# add new columns
#endif /* GLITE_LB_SERVER_WITH_WS */
}
+#ifdef GLITE_LB_SERVER_WITH_WS
+ free(ws_port);
+ ws_port = NULL;
+#endif
if (mode & SERVICE_PROXY) { /* proxy stuff */
struct sockaddr_un a;
/* Just check the database and let it be. The slaves do the job. */
edg_wll_InitContext(&ctx);
if (wait_for_open(ctx, dbstring)) {
+ edg_wll_Close(ctx);
edg_wll_FreeContext(ctx);
return 1;
}
if (dbfail_string1) free(dbfail_string1);
edg_wll_Error(ctx,&errt,&errd);
asprintf(&dbfail_string1,"%s (%s)\n",errt,errd);
+ free(errt);
+ free(errd);
if (dbfail_string1 != NULL) {
if (dbfail_string2 == NULL || strcmp(dbfail_string1,dbfail_string2)) {
if (dbfail_string2) free(dbfail_string2);
if (err) {
edg_wll_Error(ctx,&errt,&errd);
asprintf(&dbfail_string1,"%s (%s)\n",errt,errd);
+ free(errt);
+ free(errd);
dprintf(("[%d]: %s\n", getpid(), dbfail_string1));
if (!debug) syslog(LOG_ERR,dbfail_string1);
free(dbfail_string1);
char *cols[20];
glite_lbu_Statement stmt;
- if (glite_lbu_InitDBContext((glite_lbu_DBContext*) &ctx->dbctx) != 0) {
+ if (!ctx->dbctx && glite_lbu_InitDBContext((glite_lbu_DBContext*) &ctx->dbctx) != 0) {
char *ed;
glite_lbu_DBError(ctx->dbctx, NULL, &ed);