public synchronized void releaseConnection(DBConnection dbc) {
        boolean ok = used.remove(dbc);

        if (ok) {
            if (free.size() >= minsize) {
                dbc.close();
                System.out.println("Deleting 1 connection...");
            } else {
                free.add(dbc);
            }
            System.out.println(toString());
        } else {
            throw new RuntimeException("It returns back a connection that is not mine...");
        }
    }