Changeset - c4234d261cdb
[Not reviewed]
default
0 1 0
LordOfWar - 16 years ago 2010-02-14 19:47:54

fixed change_job_priority query, added retrieving data from result set to find_jobframe, fixed change_job_priority, fixed finish_frame, added start_frame.
1 file changed with 33 insertions and 12 deletions:
0 comments (0 inline, 0 general)
src/server/mysql.c
Show inline comments
 
@@ -67,7 +67,7 @@ struct distrend_mysql_result
 
  short pointlesscheck;
 
};
 

	
 
/** 
 
/**
 
    funcs
 
 */
 

	
 
@@ -133,7 +133,7 @@ distrend_mysql_result_t mysqlQuery(distr
 
  */
 
  if(conn->pointlesscheck != SEVENTY_FIVE)
 
    fprintf(stderr, "warning, I was passed a bad struct distrend_mysql_conn...\n");
 
  
 

	
 
  /** make sure that connection is still alive
 
   */
 
  if(mysql_ping(conn->mysqlconn))
 
@@ -150,10 +150,10 @@ distrend_mysql_result_t mysqlQuery(distr
 
      mysql_free_result(result);
 
      return NULL;
 
    }
 
  
 

	
 
  distrenresult->mysqlresult = result;
 
  distrenresult->pointlesscheck = FORTY_TWO;
 
  
 

	
 
  return distrenresult;
 
}
 

	
 
@@ -175,17 +175,29 @@ int mysqlResultFree(distrend_mysql_resul
 
   Individual query functions:
 
 */
 

	
 
void finish_frame(distrend_mysql_conn_t conn, int32_t jobkey, int32_t framenum)
 
void finish_frame(distrend_mysql_conn_t conn, int32_t slavekey, int32_t jobkey, int32_t framenum)
 
{
 
  char *query;
 
  distrend_mysql_result_t result;
 

	
 
  _distren_asprintf(&query, "UPDATE `distren`.`Job` SET `Finish_Confirmed`=1 WHERE `Job_Key`=%d AND `Frame`=%d",
 
		    jobkey, framenum);
 
  
 
  _distren_asprintf(&query, "CALL `distren`.`Frame_Complete`(%d,%d,%d);", slavekey, jobkey, framenum);
 

	
 
  result = mysqlQuery(conn, query);
 
  free(query);
 
  
 

	
 
  mysqlResultFree(result);
 
}
 

	
 
void start_frame(distrend_mysql_conn_t conn, int32_t slavekey, int32_t jobkey, int32_t framenum)
 
{
 
  char *query;
 
  distrend_mysql_result_t result;
 

	
 
  _distren_asprintf(&query, "CALL `distren`.`Frame_Start`(%d,%d,%d);", slavekey, jobkey, framenum);
 

	
 
  result = mysqlQuery(conn, query);
 
  free(query);
 

	
 
  mysqlResultFree(result);
 
}
 

	
 
@@ -194,11 +206,11 @@ int change_job_priority(distrend_mysql_c
 
  char *query;
 
  distrend_mysql_result_t result;
 

	
 
  _distren_asprintf(&query, "UPDATE `distren`.`Job` SET `Priority`=%d, `Finish_Confirmed`=1 WHERE `Job_Key`=%d",
 
  _distren_asprintf(&query, "UPDATE `distren`.`Job` SET `Priority`=%d WHERE `Job_Key`=%d",
 
		    newpriority, jobkey);
 
  result = mysqlQuery(conn, query);
 
  mysqlResultFree(result);
 
  
 

	
 
  return 0;
 
}
 

	
 
@@ -206,8 +218,9 @@ int find_jobframe(distrend_mysql_conn_t 
 
{
 
  distrend_mysql_result_t result;
 
  char *query;
 
  MYSQL_ROW row;
 

	
 
  _distren_asprintf(&query, "`distren`.`Frame_Get`( %d, @Job_Key, @Frame_Key) SELECT @Job_Key, @Frame_Key",
 
  _distren_asprintf(&query, "`distren`.`Frame_Get`( %d, @Job_Key, @Frame_Key); SELECT @Job_Key, @Frame_Key",
 
		    slavekey);
 
  result = mysqlQuery(conn, query);
 
  free(query);
 
@@ -215,6 +228,14 @@ int find_jobframe(distrend_mysql_conn_t 
 
  if(!result)
 
    return 1;
 

	
 
  if ((row = mysql_fetch_row(res)) != NULL)
 
  {
 
	jobkey = row[1];
 
	framenum = row[2];
 
  }
 
  else
 
	return 1;
 

	
 
  mysqlResultFree(result);
 

	
 
  return 0;
0 comments (0 inline, 0 general)