Steve Singer,,, ssinger at lists.slony.info
Wed Mar 31 06:22:22 PDT 2010
Update of /home/cvsd/slony1/slony1-engine/src/slon
In directory main.slony.info:/tmp/cvs-serv3830

Modified Files:
      Tag: REL_1_2_STABLE
	remote_worker.c remote_listen.c 
Log Message:
Reverting 1.124.2.42 

The memory is being freed too soon. 
See http://lists.slony.info/pipermail/slony1-hackers/2010-March/000309.html
core dumps were observed from this patch though we are leaking memory
without it.


Index: remote_worker.c
===================================================================
RCS file: /home/cvsd/slony1/slony1-engine/src/slon/remote_worker.c,v
retrieving revision 1.124.2.42
retrieving revision 1.124.2.43
diff -C 2 -d -r1.124.2.42 -r1.124.2.43
*** remote_worker.c	11 Mar 2010 21:38:04 -0000	1.124.2.42
--- remote_worker.c	31 Mar 2010 13:22:20 -0000	1.124.2.43
***************
*** 1390,1394 ****
  						rstat = PQresultStatus(res);
  						slon_log (SLON_CONFIG, "DDL success - %s\n", PQresStatus(rstat));
- 						PQclear(res);
  					}
  					slon_log(SLON_INFO, "completed DDL script - run ddlScript_complete_int()\n");
--- 1390,1393 ----
***************
*** 1486,1490 ****
  	dstring_free(&query1);
  	dstring_free(&query2);
- 	dstring_free(&lsquery);
  	free(wd->tab_fqname);
  	free(wd->tab_forward);
--- 1485,1488 ----
***************
*** 4919,4923 ****
  		{
  			dstring_free(&query);
- 			dstring_free(&query2);
  			pthread_mutex_unlock(&(provider->helper_lock));
  			pthread_exit(NULL);
--- 4917,4920 ----
***************
*** 5311,5315 ****
  						log_cmddata = PQgetvalue(res2, 0, 0);
  						largemem = log_cmdsize;
- 						PQclear(res2);
  					}
  
--- 5308,5311 ----
***************
*** 5397,5400 ****
--- 5393,5397 ----
  					if (largemem > 0)
  					{
+ 						PQclear(res2);
  						pthread_mutex_lock(&(wd->workdata_lock));
  						wd->workdata_largemem += largemem;

Index: remote_listen.c
===================================================================
RCS file: /home/cvsd/slony1/slony1-engine/src/slon/remote_listen.c,v
retrieving revision 1.31.2.6
retrieving revision 1.31.2.7
diff -C 2 -d -r1.31.2.6 -r1.31.2.7
*** remote_listen.c	11 Mar 2010 21:38:04 -0000	1.31.2.6
--- remote_listen.c	31 Mar 2010 13:22:20 -0000	1.31.2.7
***************
*** 267,271 ****
  					 node->no_id,
  					 dstring_data(&query1), PQresultErrorMessage(res));
- 				dstring_free(&query1);
  				PQclear(res);
  				slon_disconnectdb(conn);
--- 267,270 ----
***************
*** 343,347 ****
  		}
  		if (oldpstate != poll_state) { /* Switched states... */
- 			dstring_init(&query1);
  			switch (poll_state) {
  			case SLON_POLLSTATE_POLL:
--- 342,345 ----
***************
*** 370,374 ****
  					 node->no_id,
  					 dstring_data(&query1), PQresultErrorMessage(res));
- 				dstring_free(&query1);
  				PQclear(res);
  				slon_disconnectdb(conn);
--- 368,371 ----
***************
*** 378,382 ****
  				continue;
  			}
- 			dstring_free(&query1);
  			PQclear(res);
  		}
--- 375,378 ----



More information about the Slony1-commit mailing list