@@ -2269,64 +2269,49 @@ func deleteDatabaseHandler(w http.ResponseWriter, r *http.Request) {
22692269 err = com .InvalidateCacheEntry (loggedInUser , dbOwner , dbName , "" ) // Empty string indicates "for all versions"
22702270 if err != nil {
22712271 // Something went wrong when invalidating memcached entries for the database
2272- log .Printf ("Error when invalidating memcache entries: %s\n " , err .Error ())
2272+ log .Printf ("Error when invalidating memcache entries: %s" , err .Error ())
22732273 return
22742274 }
22752275 }
22762276
2277- // Delete the database
2278- err = com .DeleteDatabase (dbOwner , dbName )
2279- if err != err {
2280- w .WriteHeader (http .StatusInternalServerError )
2281- fmt .Fprint (w , "Internal server error" )
2282- return
2283- }
2284-
22852277 // For a live database, delete it from both Minio and our AMQP backend
2286- // FIXME: This code to delete the live database from the AMQP backend was directly copied from
2287- // FIXME api/main.go. Move the code into a shared function at some point
22882278 if isLive {
2289- // Delete the database from Minio
2290- bucket := fmt .Sprintf ("live-%s" , dbOwner )
2291- id := dbName
2292- err = com .MinioDeleteDatabase ("webUI" , dbOwner , dbName , bucket , id )
2279+ // Get the Minio bucket name and object id
2280+ var bucket , objectID string
2281+ bucket , objectID , err = com .LiveGetMinioNames (dbOwner , dbOwner , dbName )
22932282 if err != nil {
22942283 w .WriteHeader (http .StatusInternalServerError )
22952284 fmt .Fprint (w , "Internal server error" )
22962285 log .Println (err )
22972286 return
22982287 }
22992288
2300- // Delete the database from our AMQP backend
2301- var rawResponse []byte
2302- rawResponse , err = com .MQRequest (com .AmqpChan , liveNode , "delete" , loggedInUser , dbOwner , dbName , "" )
2289+ // Delete the database from Minio
2290+ err = com .MinioDeleteDatabase ("webUI" , dbOwner , dbName , bucket , objectID )
23032291 if err != nil {
23042292 w .WriteHeader (http .StatusInternalServerError )
23052293 fmt .Fprint (w , "Internal server error" )
23062294 log .Println (err )
23072295 return
23082296 }
23092297
2310- // Decode the response
2311- var resp com.LiveDBErrorResponse
2312- err = json .Unmarshal (rawResponse , & resp )
2298+ // Delete the database from our AMQP backend
2299+ err = com .LiveDelete (liveNode , loggedInUser , dbOwner , dbName )
23132300 if err != nil {
23142301 w .WriteHeader (http .StatusInternalServerError )
23152302 fmt .Fprint (w , "Internal server error" )
23162303 log .Println (err )
23172304 return
23182305 }
2319- if resp .Error != "" {
2320- err = errors .New (resp .Error )
2321- w .WriteHeader (http .StatusInternalServerError )
2322- fmt .Fprint (w , resp .Error )
2323- log .Println (err )
2324- return
2325- }
2326- if resp .Node == "" {
2327- log .Printf ("In webUI (Live) deleteDatabaseHandler(). A node responded, but didn't identify itself." )
2328- return
2329- }
2306+ }
2307+
2308+ // Delete the database in PostgreSQL
2309+ err = com .DeleteDatabase (dbOwner , dbName )
2310+ if err != err {
2311+ w .WriteHeader (http .StatusInternalServerError )
2312+ fmt .Fprint (w , "Internal server error" )
2313+ log .Println (err )
2314+ return
23302315 }
23312316
23322317 // Update succeeded
0 commit comments