00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040 #ifndef SQL_STATEMENTS_H_
00041 #define SQL_STATEMENTS_H_
00042
00043 #define STRING_SIZE 1024
00044 #define SQL_GETJOBS "SELECT id,user,hpss_file FROM requests WHERE status=?"
00045
00046 #define SQL_GETNEWJOBS "SELECT id,user,hpss_file,tries FROM requests WHERE status=0"
00047
00048 #define SQL_NEW_REQUESTS "UPDATE requests\
00049 SET status=0 \
00050 WHERE status BETWEEN 1 AND 3"
00051
00052 #define SQL_UPDATE_REQUEST_ID "UPDATE requests\
00053 SET status=?,\
00054 message=?\
00055 WHERE id=?"
00056
00057 #define SQL_UPDATE_FINAL_REQUEST_ID "UPDATE requests\
00058 SET status=?,\
00059 errorcode=?,\
00060 message=?,\
00061 end_time=FROM_UNIXTIME(?)\
00062 WHERE id=?"
00063
00064 #define SQL_UPDATE_REQUEST_SUBMITTED "UPDATE requests\
00065 SET status=?,\
00066 message=?,\
00067 queue_id=?,\
00068 cartridge=?,\
00069 position=?,\
00070 cos=?,\
00071 size=?,\
00072 errorcode=0,\
00073 submission_time=FROM_UNIXTIME(?) \
00074 WHERE hpss_file=? AND end_time IS NULL"
00075
00076 #define SQL_UPDATE_REQUEST_RESUBMITTED "UPDATE requests\
00077 SET queued_time=NULL, \
00078 queue_id=?,\
00079 cartridge=?,\
00080 position=?,\
00081 errorcode=?,\
00082 tries=?,\
00083 status=?,\
00084 message=?\
00085 WHERE hpss_file=? AND end_time IS NULL"
00086
00087 #define SQL_UPDATE_REQUEST_QUEUED "UPDATE requests\
00088 SET queued_time=FROM_UNIXTIME(?), \
00089 queue_id=?,\
00090 cartridge=?,\
00091 position=?,\
00092 errorcode=?,\
00093 tries=?,\
00094 status=?,\
00095 message=?\
00096 WHERE hpss_file=? AND end_time IS NULL"
00097
00098 #define SQL_UPDATE_REQUEST_RETRY "UPDATE requests\
00099 SET queue_id=?,\
00100 cartridge=?,\
00101 position=?,\
00102 errorcode=?,\
00103 tries=?,\
00104 status=?,\
00105 message=?\
00106 WHERE hpss_file=? AND end_time IS NULL"
00107
00108 #define SQL_UPDATE_REQUEST_ENDED "UPDATE requests\
00109 SET end_time=FROM_UNIXTIME(?), \
00110 queue_id=?,\
00111 cartridge=?,\
00112 position=?,\
00113 errorcode=?,\
00114 tries=?,\
00115 status=?,\
00116 message=?\
00117 WHERE hpss_file=? AND end_time IS NULL"
00118
00119 #define SQL_INSERT_QUEUE "INSERT INTO queues\
00120 (status,name,nbjobs,master_queue,owner, byte_size,creation_time)\
00121 VALUES (?,?,?,?,?,?,FROM_UNIXTIME(?))"
00122
00123 #define SQL_UPDATE_QUEUE_ADD_REQUEST "UPDATE queues\
00124 SET nbjobs=?,\
00125 owner=?,\
00126 byte_size=?\
00127 WHERE id=?"
00128
00129 #define SQL_UPDATE_QUEUE_ACTIVATED "UPDATE queues\
00130 SET activation_time=FROM_UNIXTIME(?),\
00131 status=?,\
00132 nbjobs=?,\
00133 nbdone=?,\
00134 nbfailed=?,\
00135 owner=?,\
00136 byte_size=?\
00137 WHERE id=?"
00138
00139 #define SQL_UPDATE_QUEUE_ENDED "UPDATE queues\
00140 SET end_time=FROM_UNIXTIME(?),\
00141 status=?,\
00142 nbjobs=?,\
00143 nbdone=?,\
00144 nbfailed=?,\
00145 owner=?,\
00146 byte_size=?\
00147 WHERE id=?"
00148
00149 #define SQL_UPDATE_QUEUE_UNSUSPENDED "UPDATE queues\
00150 SET activation_time=NULL,\
00151 end_time=NULL,\
00152 status=?,\
00153 nbjobs=?,\
00154 nbdone=?,\
00155 nbfailed=?,\
00156 owner=?,\
00157 byte_size=?\
00158 WHERE id=?"
00159
00160
00161 #define SQL_UPDATE_QUEUES_ON_STARTUP "UPDATE queues\
00162 SET status=3,\
00163 end_time=FROM_UNIXTIME(UNIX_TIMESTAMP())\
00164 WHERE status<3"
00165
00166 #define SQL_SELECTMEDIA "SELECT pvrname FROM mediatype WHERE ? LIKE volume_pattern"
00167 #define SQL_SELECTPVRID "SELECT pvrid FROM mediatype WHERE pvrname=?"
00168
00169 #define SQL_TABLE_JOBS_REQUESTS "(\
00170 `id` int(11) NOT NULL auto_increment,\
00171 `email` varchar(128) default NULL,\
00172 `user` varchar(32) default NULL,\
00173 `hpss_file` varchar(256),\
00174 `client` varchar(128),\
00175 `creation_time` datetime default NULL,\
00176 `expiration_time` mediumint(9) default NULL,\
00177 `status` tinyint(4) default 0,\
00178 `message` varchar(128) default NULL,\
00179 `tries` int(11) default '0',\
00180 `errorcode` int(11) default '0',\
00181 `submission_time` datetime default NULL,\
00182 `queued_time` datetime default NULL,\
00183 `end_time` datetime default NULL,\
00184 `cartridge` varchar(8) default '',\
00185 `position` int(11) default '-1',\
00186 `cos` int(11) default '-1',\
00187 `size` bigint(20) unsigned default '0',\
00188 `queue_id` int(11) default NULL,\
00189 PRIMARY KEY (`id`,`hpss_file`)\
00190 )"
00191 #define SQL_TABLE_JOBS_QUEUES "(\
00192 `id` int(11) NOT NULL auto_increment,\
00193 `name` char(12) default NULL,\
00194 `nbjobs` int(11) default 0,\
00195 `nbdone` int(11) default 0,\
00196 `nbfailed` int(11) default 0,\
00197 `status` tinyint(1) default NULL,\
00198 `master_queue` int(11) default NULL,\
00199 `owner` char(20) default NULL,\
00200 `creation_time` datetime default NULL,\
00201 `activation_time` datetime default NULL,\
00202 `end_time` datetime default NULL,\
00203 `byte_size` bigint(20) default 0,\
00204 PRIMARY KEY (`id`)\
00205 ) "
00206 #define SQL_CREATE_TABLE_CONF_MEDIATYPE "CREATE TABLE `mediatype` (\
00207 `pvrid` int(11) NOT NULL,\
00208 `pvrname` char(20) default NULL,\
00209 `drives` int(11) default NULL,\
00210 `lock_time` mediumtext,\
00211 `volume_pattern` char(20) default NULL,\
00212 PRIMARY KEY (`pvrid`)\
00213 ) "
00214 #define SQL_CREATE_TABLE_CONF_USERS "CREATE TABLE `allocation` (\
00215 `user` varchar(32) default NULL,\
00216 `pvrid` int(11) default NULL,\
00217 `default_share` decimal(5,2) default NULL,\
00218 `share` decimal(5,2) default NULL,\
00219 `default_depth` int(11) default NULL,\
00220 `depth` int(11) default NULL,\
00221 `grp` varchar(10) default NULL,\
00222 `expr` varchar(10) default NULL,\
00223 `org` varchar(10) default NULL\
00224 )"
00225
00226 #define SQL_SELECT_ALLOCATIONS "SELECT pvrid,user,default_share,share FROM allocation"
00227 #define SQL_SELECT_DRIVES "SELECT pvrid,drives FROM mediatype"
00228
00229 #endif