Changeset 13130 for trunk/Nebulous-Server/lib/Nebulous/Server.pm
- Timestamp:
- May 2, 2007, 10:14:46 AM (19 years ago)
- File:
-
- 1 edited
-
trunk/Nebulous-Server/lib/Nebulous/Server.pm (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Nebulous-Server/lib/Nebulous/Server.pm
r13115 r13130 1 1 # Copyright (c) 2004 Joshua Hoblitt 2 2 # 3 # $Id: Server.pm,v 1. 29 2007-05-02 01:00:10jhoblitt Exp $3 # $Id: Server.pm,v 1.30 2007-05-02 20:14:45 jhoblitt Exp $ 4 4 5 5 package Nebulous::Server; … … 166 166 { 167 167 # get object ID 168 my $query = $db->prepare ( $sql->last_insert_id );168 my $query = $db->prepare_cached( $sql->last_insert_id ); 169 169 $query->execute; 170 170 ($object_id) = $query->fetchrow_array; 171 # XXX finish seems to be required when using LAST_INSERT_ID() or we 172 # get a warning about the stmt handling still be active the next 173 # time LAST_INSERT_ID() is invoked 174 $query->finish; 171 175 } 172 176 … … 185 189 { 186 190 # get instance ID 187 my $query = $db->prepare ( $sql->last_insert_id );191 my $query = $db->prepare_cached( $sql->last_insert_id ); 188 192 $query->execute; 189 193 ($ins_id) = $query->fetchrow_array; 194 # XXX finish seems to be required when using LAST_INSERT_ID() or we 195 # get a warning about the stmt handling still be active the next 196 # time LAST_INSERT_ID() is invoked 197 $query->finish; 190 198 } 191 199 }; … … 322 330 323 331 { 324 my $query = $db->prepare ( $sql->last_insert_id );332 my $query = $db->prepare_cached( $sql->last_insert_id ); 325 333 $query->execute(); 326 327 334 ($ins_id) = $query->fetchrow_array; 335 # XXX finish seems to be required when using LAST_INSERT_ID() or we 336 # get a warning about the stmt handling still be active the next 337 # time LAST_INSERT_ID() is invoked 338 $query->finish; 328 339 } 329 340 }; … … 1041 1052 $query = $db->prepare_cached( $sql->get_storage_volume_byname ); 1042 1053 $rows = $query->execute(0.95, $name); 1054 unless ($rows > 0) { 1055 $query->finish; 1056 $log->logdie("storage volume: $name is not available"); 1057 } 1058 # when matching by name we shouldn't ever match more than once 1059 if ($rows > 1) { 1060 $query->finish; 1061 $log->logdie("affected row count is $rows instead of 1"); 1062 } 1043 1063 } else { 1044 1064 $query = $db->prepare_cached( $sql->get_storage_volume ); 1045 1065 $rows = $query->execute(0.95); 1046 }1047 1048 # there has to be atleast one storage volume1049 unless ($rows > 0) {1050 $log->logdie( "affected row count is $rows instead of > 0" );1066 # there has to be atleast one storage volume 1067 unless ($rows > 0) { 1068 $query->finish; 1069 $log->logdie("no storage volume is available"); 1070 } 1051 1071 } 1052 1072
Note:
See TracChangeset
for help on using the changeset viewer.
