07/08/2014
Fedora Commons 3.7.1
Se siete giunti a questo post pensando che tratti della nota distribuzione GNU/Linux Fedora mi spiace per voi, ma siete nel posto sbagliato.
Fedora Commons è un apprezzato progetto opensource per la creazione e gestione di librerie multimediali (almeno così è come me l’hanno venduto, ma sapete meglio di me che è sempre bene non fidarsi mai di commerciali e project manager…).
Durante il setup di una istanza di test dell’ultima versione disponsibile (3.7.1) sono incappato in un brutto errore, terminato il setup senza alcuna anomalia faccio partire l’istanza di Tomcat su cui è deployata l’applicazione e come risultato ottengo un catalina.out relativamente pulito e una tristissima homepage di amministrazione del servizio su cui campeggia una orribile errore 404 :(
In realtà nel catalina.out qualche problemino c’è proprio durante l’avvio dell’applicazione fedora.war (ma va?), così mi metto alla ricerca di dettagli nel log della suddetta in $FEDORA_HOME/server/logs/fedora.log, dove campeggia un gargantuesco errore di creazione di una delle tabelle (db MySQL nel mio caso).
Verificando sul db in effetti la creazione delle tabelle è ferma a quelle indicate nel log (ma va?) e le stesse sono prive di record.
Vista la banalità dell’errore (ma chi ha validato gli script di creazione del dbms?!?) ho corretto creando manualmente la tabella, poi cercando online ho trovato un gentile utente che suggerisce di definire sia come UNIQUE KEY che come PRIMARY KEY il campo rebuildDate usando la query:
CREATE TABLE fcrepoRebuildStatus (
rebuildDate bigint NOT NULL,
complete boolean NOT NULL,
UNIQUE KEY rebuildDate (rebuildDate),
PRIMARY KEY rebuildDate (rebuildDate)
);
Questa volta al riavvio tutto pare procedere per il meglio, se poi dovesse capitare che a forza di fare tentativi ed esperimenti fedora commons dovesse proprio incazzarsi non vi resta che lanciare l’apposito script di ricostruzione del database fedora-rebuild.sh (ricordatevi di definire le tre variabili d’ambiente sacre, JAVA_HOME, FEDORA_HOME e CATALINA_HOME).
Al termine potete godervi un fedora.log pulito e il servizio finalmente raggiungibile alla url http://server:9080/fedora/admin