eigentlich sollte ja die funktion vsprintf() so gar nicht mehr aufgerufen werden, außer es wird in der aufrufenden funktion db_query() mehr als 1 parameter angegeben.

Query was empty
deutet darauf hin, dass in der entsprechenden datenbankabfrage etwas nicht stimmt, da nichts zurückgegeben wird.