Mostra notizie nelle discussioni
Avatar
Scritto da
Non Autenticato
il 2018-04-03 13:49:47.0 alle 2018-04-03 13:49:47.0
Mentre i due snowflake starnazzano
Il bug è stato risolto.

Lunga vita al forum!! Lunga vita al ré!! Ficoso

Ci speravate, vero, che questo progetto di libertà di espressione fallisse? E invece non è così, perché quando Mattia introduce un bug è capace di ripararlo, mentre voi siete qui a starnazzare.

Ora però voglio proprio vedere quanto sono bravi due snowflake, che fanno tanto i fighi.

In questo thread perciò cercheremo di capire l'errore e sicuramente i due snowflake saranno in grado di spiegarlo.

Ecco come si presentava il metodo quando dava problemi...


public List<String> getForums() {

        String query = "select forums.id\n" + 
                "from forums\n" + 
                "left join messages on forums.id=messages.forum\n" + 
                "and forums.enabled=1\n" + 
                "group by forums.id\n" + 
                "order by count(forums.id) desc;";

        Connection conn = null;
        ResultSet result = null;
        PreparedStatement stat = null;

        try {
            conn = dataSource.getConnection();


            stat = dataSource.getConnection()
                    .prepareStatement(query);


            result = stat.executeQuery();

            List<String> res = new ArrayList<String>();

            while(result.next()) {
                res.add(result.getString("id"));
            }

            return res;

        } catch (SQLException e) {
            return null;
        }

        finally {
            CloseDbResources(conn, stat, result);
        }           
    }



Le risorse unmanaged vengono ripulite.

protected void CloseDbResources(Connection connection, PreparedStatement preparedStatement, ResultSet resultSet) {
        if (resultSet != null) {
            try {
                resultSet.close();
            } catch (SQLException e) { }
        }
        if (preparedStatement != null) {
            try {
                preparedStatement.close();
            } catch (SQLException e) { }
        }
        if (connection != null) {
            try {
                connection.close();
            } catch (SQLException e) { }
        }
    }



Le classe MiscDAO (che contiene la query) viene istanziata dalla DAOFactory, che è un singleton. Il metodo init (che inizalizza la classe per interfacciarsi al database) viene chiamato una solo una volta, nel momento in cui la classe viene istanziata... e siccome il metodo init è privato, siamo sicuri che non possa essere chiamato da fuori.

static synchronized DAOFactory getInstance() {
        if (instance == null) {
            String persistenceName = FdTConfig.getProperty("persistence.name");
            try {
                instance = new DAOFactory();
                instance.init(FdTConfig.getDatabaseConfig(persistenceName));
            } catch (Exception e) {
                LOG.fatal("Cannot instantiate Persistence '" + persistenceName + "'", e);
                return null;
            }
        }
        return instance;
    }


void init(Properties databaseConfig) throws ClassNotFoundException {
        String driver = databaseConfig.getProperty("driverclass");
        Class.forName(driver);

        String username = databaseConfig.getProperty("username");
        String password = databaseConfig.getProperty("password");
        String url = databaseConfig.getProperty("url");

        dataSource = new BasicDataSource();
        dataSource.setMaxTotal(15);
        dataSource.setMaxIdle(10);
        dataSource.setMinIdle(3);
        dataSource.setMaxWaitMillis(30000);
        dataSource.setTestOnBorrow(true);
        dataSource.setTestWhileIdle(true);
        dataSource.setUrl(url);
        dataSource.setUsername(username);
        dataSource.setPassword(password);
        dataSource.setValidationQuery("SELECT 1");
        dataSource.setValidationQueryTimeout(30);



        DSLContext jooq = DSL.using(dataSource, SQLDialect.MYSQL);

        authorsDAO = new AuthorsDAO(jooq);
        threadsDAO = new ThreadsDAO(jooq);
        messagesDAO = new MessagesDAO(jooq);
        pollsDAO = new PollsDAO(jooq);
        quotesDAO = new QuotesDAO(jooq);
        bookmarksDAO = new BookmarksDAO(jooq);
        adminDAO = new AdminDAO(jooq);
        miscDAO = new MiscDAO(jooq, dataSource);
        privateMsgDAO = new PrivateMsgDAO(jooq);
        digestDAO = new DigestDAO(jooq);
        loginsDAO = new LoginsDAO(jooq);
    }



Per risolvere il bug (speriamo) è stato in pratica sufficiente riscrivere il metodo getForums in questa maniera, cioè utilizzando JOOQ.

public List<String> getForums() {

		
		Result<Record1<String>> records = jooq.select(FORUMS.ID)
				.from(FORUMS)
				.leftOuterJoin(MESSAGES)
				.on(FORUMS.ID.eq(MESSAGES.FORUM))
				.groupBy(FORUMS.ID)
				.orderBy(DSL.count(FORUMS.ID).desc())
				.fetch();
		

		List<String> res = new ArrayList<String>(records.size());
		for (Record1<String> record : records) {
			res.add(record.getValue(FORUMS.ID));
		}
		
		return res;
	}



Ora, a me interessa MOLTO capire l'errore commesso nella precedente versione, perché sbagliando e analizzando l'errore si impara.

Sono curioso di sentire la spiegazione del frocetto snowfloake e dello svizzero strapagato per fare database di merda.

Vaffan

Ad https://duckduckgo.com/?t=ffab&q=vaffanculo&ia=web
CULOOOO!!!!‎
Avatar
Scritto da
Non Autenticato
il 2018-04-03 08:37:42.0 alle 2018-04-03 08:37:42.0
Re: Giambo fa tanto il figo, ma...
se ammettevi di essere un incapace facevi una figura migliore
mister snowflake admin wannabe sotuttoio
abbassa la cresta e cerca di imparare arrogante frocio ciucciacazzettini
Avatar
Scritto da
Non Autenticato
il 2018-04-03 05:03:24.0 alle 2018-04-03 05:03:24.0
Re: Giorgia Meloni "Il governo ha consegnato pezzi di mare alla Francia in silen
Scritto da:
> Scritto da: dada216
> > Scritto da:
> > > Scritto da:
> > > ma quando hai annunciato che avresti preso parte alla campagna di un candidato leghista dev'essere stata la pagliuzza che fa stramazzare il cammello Cylon
> >
> > ehi non calunniarmi, io ho aiutato Forza Italia, non la Lega.
>
> Minchia, molto peggio Perplesso

Non so se sia molto peggio. Il problema di Forza Italia è Berlusconi e comunque il fatto che abbiano fatto entrare nel partito gente che con la destra liberale non c'entrano nulla.

Per come la vedo, sia la destra liberale (che più che liberale è liberista) che quella sociale sono problematiche in maniera diversa, vedi: I destri che aggrediscono il comunismo (ma il prob...

DAI CHE È VENERDÌ!!!

Ad https://www.youtube.com/@daiche_e_venerdi
Figa a nastroooo!‎
Avatar
Scritto da
Non Autenticato
il 2018-04-03 04:56:05.0 alle 2018-04-03 04:56:05.0
Re: Dada
Scritto da: dada216
> Scritto da:
> >
> > Tu sei pro-europa? Perché?
>
>
> svariate e tante ragioni, in primis perche' penso che di fatto in Europa dal crollo dell'impero britannico in poi di fatto viviamo gia' in un unico paese, anche culturalmente
>
> ad es.
> https://en.wikipedia.org/wiki/Blue_Banana
>
> IMO di fatto i "bianchi-cristiani" che vivono tra l'UK e la polonia/romania/bulgaria/grecia fossero da sempre grossomodo la stessa cultura/politica, ed e' ormai dai tempi dei mongoli, se non prima, che la gente che viene dall'altro lato dell'eurasia ci/si/vi faccia guerra.
>
> in secundis la vedo anche come questione pratica, di fatto l'EU e' un gigante burocratico che puo fare tutto quello che fa la burocrazia, nel bene e nel male.

Il problema però è che bisognerebbe ridisegnare l'UE sulla base di un sistema più basato sulla democrazia diretta.

Inoltre io sono dell'idea che il frazionamento del potere politico porti a risultati migliori rispetto alla centralizzazione su vaste aree geografiche.

Già i ticinesi a volte hanno la sensazione che a Berna non comprendano bene la realtà ticinese. Figuriamoci cosa ne può capire Bruxelles.

Quindi in sintesi quello che penso è che esista la necessità di fare accordi su vaste aree geografiche, ma allo stesso tempo le regioni devono avere una grande autonomia, così che piccoli popoli possano autogovernarsi sulla base della realtà regionale, che solo gli abitanti del luogo comprendono.

Avatar
Scritto da
Non Autenticato
il 2018-04-03 02:17:27.0 alle 2018-04-03 02:17:27.0
Re: Dada
Scritto da: dada216
> Scritto da:
> >
> > Tu sei pro-europa? Perché?
>
>
> svariate e tante ragioni, in primis perche' penso che di fatto in Europa dal crollo dell'impero britannico in poi di fatto viviamo gia' in un unico paese, anche culturalmente

È dai tempi dell'impero romano che siamo un unico paese.

Ma anche paesi diversi, e questo gli europai non l'hanno voluto capire.

> ad es.
> https://en.wikipedia.org/wiki/Blue_Banana

Europe is overpopulated.

E la cosa peggiore è che si sovrappopoli un posto come la pianura padana, ricoprendo di cemento un'area che dovrebbe essere votata alla produzione agricola.

> IMO di fatto i "bianchi-cristiani" che vivono tra l'UK e la polonia/romania/bulgaria/grecia fossero da sempre grossomodo la stessa cultura/politica, ed e' ormai dai tempi dei mongoli, se non prima, che la gente che viene dall'altro lato dell'eurasia ci/si/vi faccia guerra.
>
> in secundis la vedo anche come questione pratica, di fatto l'EU e' un gigante burocratico che puo fare tutto quello che fa la burocrazia, nel bene e nel male.

Uno dei suadenti spot "di Europa si deve parlare" andati in onda qualche anno fa diceva "un'isola di pace e democrazia" e questo è uno dei pochi argomeni che appoggio di ciò che si diceva in quegli spot. Peccato però che la democrazia sia largamente una farsa, usata dai padroni della democrazia per controllare e non come premessa per la libertà individuale.

La UE è riuscita a far carta straccia dei pilastri della civiltà europea.

P.S. Se riesci a trovarmi quegli spot in 1080p ti regalo una Pietra™ funzionante senza problemi fin dal paleolitico.
Avatar
Scritto da
Non Autenticato
il 2018-04-03 02:04:14.0 alle 2018-04-03 02:04:14.0
dada
tu che sei un diplomatico.

Vai di là e in chat e convinci tutti a tornare qui e che Mattia non è più un losco figuro.
Avatar
Scritto da
Non Autenticato
il 2018-04-03 01:59:58.0 alle 2018-04-03 01:59:58.0
Re: i congiuntivi cribbio!
Scritto da: dada216
> ho guardato un po di televisione ultimamente, purtroppo.
>
> CSI.
> punto primo: mi piace in realta', in particolare qualche puntata di csi las vegas mi ha proprio divertito, sto invecchiando.
> manco un congiuntivo azzeccano, quindi ho cercato le stesse puntate sull'internetto ed in inglese azzeccano i costrutti equivalenti.
>
> TG.
> apparte che fanno kakare a spruzzo le selezioni di cosa passa per notizie ho sentito dei tg rai dove sia nei servizi che in studio hanno sbagliato amaramente dei congiuntivi, pure piuttosto semplici.
>
> FILMs
> ho sentito dei film doppiati ed in alcuni casi channo azzeccato e i congiuntivi erano giusti, ho visto delle produzioni italiane e di nuovo i congiuntivi, questi sconosciuti.

Non sapevi che in itagliano i congiuntivi non esistono?

Cosa sbagliano, lo sostituiscono con l'indicativo o la consecutio?

MaCheCCazzoVuoi?

Ad cazzituoi.org
FattiICazziTuoi‎
Avatar
Scritto da
Non Autenticato
il 2018-04-03 01:57:43.0 alle 2018-04-03 01:57:43.0
Re: Giorgia Meloni "Il governo ha consegnato pezzi di mare alla Francia in silen
Scritto da: dada216
> Scritto da:
> > Scritto da:
> > ma quando hai annunciato che avresti preso parte alla campagna di un candidato leghista dev'essere stata la pagliuzza che fa stramazzare il cammello Cylon
>
> ehi non calunniarmi, io ho aiutato Forza Italia, non la Lega.

Minchia, molto peggio Perplesso

> morto un exsinistro se ne fa un altro.
>
> cmq la scelta e' stata dovuta solo ed esclusivamente a conoscenze pregresse personali, per quanto mi riguarda sarebbe potuto essere anche casapound se ci fossero state alcune condizioni.
>
> pensavo che quel candidato avesse una chance, ma dentro di me speravo che non sarebbe passato e cosi' e' stato, il che in realta' mi ha fatto riprendere un po di speranze.
>
> cmq no, non penso che fosse quella la ragione, affatto.
Avatar
Admin
Scritto da
Non Autenticato
il 2018-04-03 00:32:14.0 alle 2018-04-03 00:32:14.0
Re: È ora possibile rispondere nella sezione admin
Scritto da: dada216
> Scritto da: Administrator
> > Come suggerito da dada, gli utenti ora possono rispondere nella sezione admin, ma chiaramente non possono creare nuovi thread.
>
> prot.
>
> a quando il motorino?
> se implementi un motorino di ricerca che funziona avresti per davvero aggiunto qualcosa che mancava da tempo, penso che non sia affatto facile, non c'e' roba gia' fatta piuttosto che usare il codice del motorino di sarru che per ragioni che a me sfuggono non funziona fa kakare.
>
> **Modificato dall'autore il 02.04.2018 23:36**

A me sembra che il motorino funzioni, io riesco a trovare quello che voglio trovare.

Se non riesci a ritrovare è soltanto perché non riesci a inserire le parole chiave che servono per trovare quello che cerchi. Dopo molto tempo può essere che ti ricordi i messaggi in maniera distorta e quindi li cerchi con parole chiave sbagliate.

Se tu ora provi a cercare nel motorino una parte qualsiasi del mio messaggio, vedrai che ti verrà fuori.
Avatar
Scritto da
Non Autenticato
il 2018-04-03 00:19:04.0 alle 2018-04-03 00:19:04.0
Re: Giambo fa tanto il figo, ma...
Scritto da:
> ha funzionto perfettamente per anni
> ci ha lavorato avvelentani achille e giambo
> tu in 10 giorni mandi tutto a puttane
> e non accetti la responsabilità
>
> sei un incapace privo di modestia e carisma

Tu fai parte di quella cricca di snowflake pedofilofobi ritardati e le cazzate che scrivi lo riconfermano.

Tra mandare tutto a puttane e scrivere una query che per qualche motivo crea problemi ce ne passa.

Il problema sembra più grosso di quello che è per il semplice fatto che ogni caricamento di pagina (e quindi ogni click) richiede lo scaricamento delle sezioni... perciò se la query alla sezione è scassata, ogni caricamento di pagina risulta problematico.
Quindi quello che succede, in parole povere, è che ogni volta che ricarichi una pagina, la servlet cerca di scaricare la sezioni... e intanto la pagina sta in attesa (loading), ma solo per un tempo definito. Se dopo X secondi non riesce a ottenere i dati, la pagina viene comunque caricata, ma senza le sezioni.

Non è che ho messo sotto sopra il codice, ma ho introdotto un bug in un punto critico, che crea problemi ad ogni caricamento di pagina.

Non è successo nulla di apocalittico... non è andato tutto a puttane.

Che poi il forum sia funzionato per anni non lo metto in dubbio, ma è funzionato grazie a jooq. Se scrivevano una query sql probabilmente il bug sarebbe emerso già quel dì là.
Non è certo normale che una query sql crei simili problemi, nel momento in cui le risorse unmanaged vengono ripulite come da manuale.

Resta comunque il fatto (e lo ripeto) che il db non è normalizzato, in quanto non può esistere una sezione del forum senza che esista un messaggio.
Le sezione del forum devono esistere indipendentemente dai messaggi, perché possono anche essere vuote.

Io ora voglio dare la possibilità di creare nuove sezioni, quindi questa falla architettonica andava superata.
Avatar
☺
Scritto da
il 2018-04-03 00:01:33.0 alle 2018-04-03 00:01:33.0
Trollate totali: 6374
Re: Giorgia Meloni "Il governo ha consegnato pezzi di mare alla Francia in silen
Scritto da:
> Scritto da:
>ma quando hai annunciato che avresti preso parte alla campagna di un candidato leghista dev'essere stata la pagliuzza che fa stramazzare il cammello Cylon

ehi non calunniarmi, io ho aiutato Forza Italia, non la Lega.

morto un exsinistro se ne fa un altro.

cmq la scelta e' stata dovuta solo ed esclusivamente a conoscenze pregresse personali, per quanto mi riguarda sarebbe potuto essere anche casapound se ci fossero state alcune condizioni.

pensavo che quel candidato avesse una chance, ma dentro di me speravo che non sarebbe passato e cosi' e' stato, il che in realta' mi ha fatto riprendere un po di speranze.

cmq no, non penso che fosse quella la ragione, affatto.

**Modificato dall'autore il 03.04.2018 00:06**
Please consider the environment before printing this message, 50% of the above is useless!

Arricchimento culturale in Svezia in corso

Ad https://www.breitbart.com/europe/2019/01/04/patient-placed-in-quarantine-after-suspected-ebola-case-in-sweden/
The Emergency Room of a Swedish hospital was closed down Friday morning after a patient recently returned from Africa arrived vomiting blood, a possible symptom of the deadly and contagious Ebola virus.‎
Avatar
☺
Scritto da
il 2018-04-02 23:57:06.0 alle 2018-04-02 23:57:06.0
Trollate totali: 6374
i congiuntivi cribbio!
ho guardato un po di televisione ultimamente, purtroppo.

CSI.
punto primo: mi piace in realta', in particolare qualche puntata di csi las vegas mi ha proprio divertito, sto invecchiando.
manco un congiuntivo azzeccano, quindi ho cercato le stesse puntate sull'internetto ed in inglese azzeccano i costrutti equivalenti.

TG.
apparte che fanno kakare a spruzzo le selezioni di cosa passa per notizie ho sentito dei tg rai dove sia nei servizi che in studio hanno sbagliato amaramente dei congiuntivi, pure piuttosto semplici.

FILMs
ho sentito dei film doppiati ed in alcuni casi channo azzeccato e i congiuntivi erano giusti, ho visto delle produzioni italiane e di nuovo i congiuntivi, questi sconosciuti.
Please consider the environment before printing this message, 50% of the above is useless!
Avatar
Scritto da
Non Autenticato
il 2018-04-02 23:46:42.0 alle 2018-04-02 23:46:42.0
Re: Giambo fa tanto il figo, ma...
ha funzionto perfettamente per anni
ci ha lavorato avvelentani achille e giambo
tu in 10 giorni mandi tutto a puttane
e non accetti la responsabilità

sei un incapace privo di modestia e carisma
Avatar
☺
Admin
Scritto da
il 2018-04-02 23:36:38.0 alle 2018-04-02 23:36:38.0
Trollate totali: 6374
Re: È ora possibile rispondere nella sezione admin
Scritto da: Administrator
> Come suggerito da dada, gli utenti ora possono rispondere nella sezione admin, ma chiaramente non possono creare nuovi thread.

prot.

a quando il motorino?
se implementi un motorino di ricerca che funziona avresti per davvero aggiunto qualcosa che mancava da tempo, penso che non sia affatto facile, non c'e' roba gia' fatta piuttosto che usare il codice del motorino di sarru che per ragioni che a me sfuggono non funziona fa kakare.

**Modificato dall'autore il 02.04.2018 23:36**
Please consider the environment before printing this message, 50% of the above is useless!
Avatar
Scritto da
Non Autenticato
il 2018-04-02 23:35:31.0 alle 2018-04-02 23:35:31.0
Re: Da quando Mattia Snowflake 3.0
Scritto da:
> Scritto da:
> > non ha la capacità di gestire questo progetto
>
> Ma per favore, adesso solo perché ho introdotto un bug che PROBABILMENTE adesso ho risolto significa che non ho capacità.
>
> Allroa tutti i programmatori devono andarsene a caso, visto che a tutti i programmatori capita di introdurre dei bug.
>
> L'unica cosa costruttiva l'ha scritta il troll sopra: prima bisognerebbe testare in locale, vero, ma certi bug vengono fuori solo in produzione. Tipo, le problematiche relative alla memoria magari non vengono fuori in un rapido test in locale.

patetico
incapace
sopravvalutato

Vieni anche tu in gita in Africa!

Ad https://www.ilmessaggero.it/AMP/italia/luca_tacchetto_italiano_scomparso_burkina_faso-4209268.html
Le popolazioni locali ti accoglieranno così bene che scomparirai letteralmente dal resto del mondo! Lasciati alle spalle la civiltà occidentale, gli smartphone, la ruota e il fuoco!‎
Avatar
☺
Scritto da
il 2018-04-02 23:34:57.0 alle 2018-04-02 23:34:57.0
Trollate totali: 6374
Re: Dada
Scritto da:
>
> Tu sei pro-europa? Perché?


svariate e tante ragioni, in primis perche' penso che di fatto in Europa dal crollo dell'impero britannico in poi di fatto viviamo gia' in un unico paese, anche culturalmente

ad es.
https://en.wikipedia.org/wiki/Blue_Banana

IMO di fatto i "bianchi-cristiani" che vivono tra l'UK e la polonia/romania/bulgaria/grecia fossero da sempre grossomodo la stessa cultura/politica, ed e' ormai dai tempi dei mongoli, se non prima, che la gente che viene dall'altro lato dell'eurasia ci/si/vi faccia guerra.

in secundis la vedo anche come questione pratica, di fatto l'EU e' un gigante burocratico che puo fare tutto quello che fa la burocrazia, nel bene e nel male.
Please consider the environment before printing this message, 50% of the above is useless!
Avatar
☺
Scritto da
il 2018-04-02 23:28:54.0 alle 2018-04-02 23:28:54.0
Trollate totali: 6374
Re: Dada
Scritto da:
> Scritto da:
> > Scritto da: dada216
> > > Ho votato m5s, che e' abbastanza putinista e molto anti-europa.
> >
> > Tu sei pro-europa? Perché?
> >
> > Comunque anche io avrei votato il M5S. Da un lato per la ragione che hai scritto tu (votando le stesse persone che sono lì da 30 anni non puoi ottenere aria nuova, cioè miglioramenti) , dall'altro per via del "reddito di cittadinanza" che secondo me va fatto entro ieri.
> >

secondo me al sud li hanno votati per lo stesso motivo per cui li ho votati io, sono gli unici che non sono ancora stati colonizzati dalla mafia.
riguardo l'UBI mi trovi abbastanza d'accordo, penso che andra' introdotto.

>
> P.S. ormai il M5S è l'uncia forza politica che rappresenta il socialismo: tutti gli altri parlano con disprezzo del redddito di cittadinanza... anche Renzi che è in un partito di sinistra ma parla come un liberista.
>
> Il futuro della sinistra in Italia è il M5S.

vedremo come va, non c'e' piu' la sinistra perche' non c'e' piu' la societa' che la aveva prodotta, c'e' qualcos'altro che contiene molti degli elementi che c'erano nella sinistra, ed e' il m5s.
Please consider the environment before printing this message, 50% of the above is useless!
Avatar
☺
Scritto da
il 2018-04-02 23:25:36.0 alle 2018-04-02 23:25:36.0
Trollate totali: 6374
Re: dove si vede
Scritto da:
> quale sia il capitale sociale di una societá?c'é un registro pubblico?

dipende dal tipo di societa'.
per le srl deve essere indicato il capitale sociale versato nelle comunicazioni, non credo che esista un registro ma la camera di commercio dovrebbe darti il dato senza rompere troppo le palle. Per le spa praticamente tutto e' semi-pubblicamente disponibile, alla borsa dove sono quotate.

per gli altri tipi non saprei, una chiamata in camera di commercio dovrebbe fugarti i dubbi.

a che ti serve saperlo?
Please consider the environment before printing this message, 50% of the above is useless!

Pagina generata in 167 millisecondi

Utenti attivi: 10 nell'ultimo minuto, 42 negli ultimi cinque minuti, 88 negli ultimi 15 minuti