<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Strange enough. I've replicated your setup on my computer (using
      PostgreSQL, as I have no MySQL currently installed), and it works:
      midPoint starts cleanly. I am able to add/delete repository
      objects.<br>
    </p>
    <p>Attached are my config.xml and server.xml; they are pretty much
      the same as yours.</p>
    <p>So, I have no idea. You could try adding
      <database>mysql</database> into <repository>
      element in your config.xml, but it would most probably make no
      difference.</p>
    <p>As last resort, you could turn on the most detailed debugging for
      the repository on startup by adding a line like this</p>
    <p><logger name="com.evolveum.midpoint.repo" level="TRACE" /></p>
    <p>into webapps\midpoint\WEB-INF\classes\logback.xml file and start
      midPoint. In idm.log there should be quite a detailed record of
      what's going on.<br>
    </p>
    <pre class="moz-signature" cols="72">Pavol Mederly
Software developer
evolveum.com
</pre>
    <div class="moz-cite-prefix">On 15.08.2016 21:03, Florin. Stingaciu
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAMQHPY33Xf2M49GJBVPor=eH04fpM_Zwzucyfdr-YwnK7XUydQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">Here's my datasource config:<br>
        <br>
        <div>    <Resource name="jdbc/mysql" auth="Container"
          type="javax.sql.DataSource"</div>
        <div>        username="midpoint" password="pass"</div>
        <div>        url="jdbc:mysql://SERVER:3306/midpoint_dev"</div>
        <div>        driverClassName="com.mysql.jdbc.Driver"</div>
        <div>        accessToUnderlyingConnectionAllowed="true"</div>
        <div>        initialSize="5" maxWait="5000"</div>
        <div>        maxActive="30" maxIdle="5"</div>
        <div>        validationQuery="select 1"</div>
        <div>        poolPreparedStatements="true"/></div>
        <div><br>
        </div>
        <div>And here's my config.xml:<br>
          <br>
          <div>        <repository></div>
          <div>                <embedded>false</embedded></div>
          <div>               
<repositoryServiceFactoryClass>com.evolveum.midpoint.repo.sql.SqlRepositoryFactory</repositoryServiceFactoryClass></div>
          <div>               
            <hibernateHbm2ddl>validate</hibernateHbm2ddl></div>
          <div>               
<hibernateDialect>com.evolveum.midpoint.repo.sql.util.MidPointMySQLDialect</hibernateDialect></div>
          <div>               
            <dataSource>java:comp/env/jdbc/mysql</dataSource></div>
          <div>        </repository></div>
          <div>        <taskManager></div>
          <div>                <clustered>true</clustered></div>
          <div>               
            <jmxUsername>midpoint</jmxUsername></div>
          <div>               
            <jmxPassword>password</jmxPassword></div>
          <div>        </taskManager></div>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Mon, Aug 15, 2016 at 11:44 AM, Pavol
          Mederly <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:mederly@evolveum.com" target="_blank">mederly@evolveum.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000">
              <p>Hello Florin,</p>
              <p>this is really interesting. Please, could you also
                share your midPoint config.xml, as well as your data
                source configuration? (except credentials, of course)</p>
              <span class="">
                <p>Best regards,<br>
                </p>
                <pre cols="72">Pavol Mederly
Software developer
<a moz-do-not-send="true" href="http://evolveum.com" target="_blank">evolveum.com</a>
</pre>
              </span>
              <div>
                <div class="h5">
                  <div>On 15.08.2016 19:39, Florin. Stingaciu wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="ltr">Hello Pavol, 
                      <div><br>
                      </div>
                      <div>Thanks for your detailed response. I tried
                        setting up the datasource with validationQuery
                        set up properly for the mySQL backed I have.
                        However, upon service restart I get the
                        following errors: <a moz-do-not-send="true"
                          href="http://pastebin.com/8dpGN0JC"
                          target="_blank">http://pastebin.com/<wbr>8dpGN0JC</a><br>
                        <br>
                        To save you a click, it seems as though the
                        connection is set up in readonly mode or some
                        other strange things happen. I've tried setting <span>readonly</span><span>=</span><span>"false"</span><span> in
                          the resource definition in server.xml but that
                          didn't help. I will continue researching this,
                          however any guidance would be quite
                          appreciated. </span></div>
                      <div><span><br>
                        </span></div>
                      <div><span>Thanks!</span></div>
                      <div><span>-F       </span></div>
                    </div>
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On Mon, Aug 15, 2016 at
                        2:29 AM, Pavol Mederly <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:mederly@evolveum.com"
                            target="_blank">mederly@evolveum.com</a>></span>
                        wrote:<br>
                        <blockquote class="gmail_quote" style="margin:0
                          0 0 .8ex;border-left:1px #ccc
                          solid;padding-left:1ex">
                          <div bgcolor="#FFFFFF" text="#000000">
                            <p>Hello Florin,</p>
                            <p>having looked at your logs, it seems that
                              maybe explicit setting of validationQuery
                              in Quartz data source setup would help.
                              (See <a moz-do-not-send="true"
href="http://www.quartz-scheduler.org/documentation/quartz-2.x/configuration/ConfigDataSources.html"
                                target="_blank">http://www.quartz-scheduler.or<wbr>g/documentation/quartz-2.x/con<wbr>figuration/ConfigDataSources.<wbr>html</a>.)</p>
                            <p>Unfortunately, current midPoint
                              implementation does not allow to configure
                              Quartz data source parameters. So, there
                              are the following three possibilities:</p>
                            <ol>
                              <li>Take an alternative route, and use
                                application server-defined data source
                                (with validationQuery set up).<br>
                              </li>
                              <li>Patch Task Manager implementation by
                                adding appropriate lines to Quartz
                                configuration (see
                                LocalNodeManager.java:87-90).</li>
                              <li>Wait until we implement it - I've
                                created an issue <a
                                  moz-do-not-send="true"
                                  href="https://jira.evolveum.com/browse/MID-3347"
                                  target="_blank">MID-3347</a> for this.<br>
                              </li>
                            </ol>
                            <p>As for the first one (externally defined
                              data source): Please see <a
                                moz-do-not-send="true"
href="https://wiki.evolveum.com/display/midPoint/Repository+Configuration#RepositoryConfiguration-Datasourceconfiguration"
                                target="_blank">https://wiki.evolveum.com/disp<wbr>lay/midPoint/Repository+Config<wbr>uration#RepositoryConfiguratio<wbr>n-Datasourceconfiguration</a>
                              on how to configure midPoint repository
                              with the data source. This data source
                              will be used also by Quartz, if not
                              overriden in <taskManager> section.
                              It should work but I don't remember if
                              someone actually tested this.</p>
                            <p>Concerning autoReconnect: I have no
                              experiences with this setting. I agree
                              with you that about the hesitation of
                              using it in production environment. If
                              really needed, I'd recommend to separate
                              midPoint repository configuration from
                              Quartz configuration by using different
                              JDBC URLs for the two: the standard one
                              for the repository and the one with
                              "autoReconnect=true" for Quartz. In this
                              way, potential negative effects should be
                              restricted to task management
                              functionality only. But, overall, I'd
                              suggest trying to eliminate the problem by
                              setting validationQuery first.<br>
                            </p>
                            <p>Best regards,<br>
                            </p>
                            <pre cols="72">Pavol Mederly
Software developer
<a moz-do-not-send="true" href="http://evolveum.com" target="_blank">evolveum.com</a>
</pre>
                            <div>
                              <div>
                                <div>On 14.08.2016 22:40, Florin.
                                  Stingaciu wrote:<br>
                                </div>
                              </div>
                            </div>
                            <blockquote type="cite">
                              <div>
                                <div>
                                  <div dir="ltr">Hello, 
                                    <div><br>
                                    </div>
                                    <div>I'm trying to configure an
                                      active/active configuration, and
                                      experiencing some issues with the
                                      Quartz scheduler. The SQL
                                      connection seems to timeout quite
                                      often and result in many warning
                                      messages. I'm also experiencing
                                      some errors -- as the timeout
                                      closes the connection, some
                                      processes are still trying to
                                      commit using that stale handler. </div>
                                    <div><br>
                                    </div>
                                    <div>Here are some relevant logs
                                      from both midPoint instances in
                                      this cluster: <a
                                        moz-do-not-send="true"
                                        href="http://pastebin.com/JFjqrLnT"
                                        target="_blank">http://pastebin.com/J<wbr>FjqrLnT</a> <a
                                        moz-do-not-send="true"
                                        href="http://pastebin.com/1vy4iYPY"
                                        target="_blank">http://pastebin.com/1v<wbr>y4iYPY</a><br>
                                      <br>
                                      Also here's the relevant portion
                                      of my config.xml file: <a
                                        moz-do-not-send="true"
                                        href="http://pastebin.com/WbydcCC8"
                                        target="_blank">http://pastebin.com/Wbyd<wbr>cCC8</a></div>
                                    <div><br>
                                      Following the suggestions in the
                                      warnings, I've started to look at
                                      autoReconnect propriety of the
                                      JDBC connector and applied it to
                                      my configs like so:</div>
                                    <div><br>
                                      <blockquote class="gmail_quote"
                                        style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span><jdbcUrl>jdbc:mysql://SERVER:3<wbr>306/midpoint_dev?autoReconnect<wbr>=true</jdbcUrl></span></blockquote>
                                      <div><br>
                                      </div>
                                      <div>Since implementing this
                                        change, the errors and warnings
                                        seem to have disappeared. I will
                                        continue to monitor the logs and
                                        ensure this actually the case.  </div>
                                      <div><br>
                                      </div>
                                      <div>Reading the mysql docs, I
                                        found that this is not
                                        recommended as this may cause
                                        data inconsistency issues and
                                        that stale connection exceptions
                                        should be properly caught within
                                        the application. Namely:</div>
                                      <div><br>
                                      </div>
                                      <blockquote class="gmail_quote"
                                        style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">The
                                        use of this feature is not
                                        recommended, because it has side
                                        effects related to session state
                                        and data consistency when
                                        applications don't handle
                                        SQLExceptions properly, and is
                                        only designed to be used when
                                        you are unable to configure your
                                        application to handle
                                        SQLExceptions resulting from
                                        dead and stale connections
                                        properly.</blockquote>
                                      <div><br>
                                        Do you have any recommended
                                        configuration for this scenario?
                                        I'd like to move my current
                                        production environment in an
                                        active active configuration,
                                        however as of right now I'm
                                        hesitant to do so in order to
                                        avoid any data corruption.
                                        Especially since it's quite
                                        difficult to test for data
                                        consistency issues that may
                                        arise from using autoReconnect
                                        in my dev environment. <br>
                                        <br>
                                        Thanks, </div>
                                      <div>-F </div>
                                      <div> </div>
                                    </div>
                                  </div>
                                  <br>
                                  <fieldset></fieldset>
                                  <br>
                                </div>
                              </div>
                              <pre>______________________________<wbr>_________________
midPoint mailing list
<a moz-do-not-send="true" href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a>
<a moz-do-not-send="true" href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/mail<wbr>man/listinfo/midpoint</a>
</pre>
    </blockquote>
    

  </div>


______________________________<wbr>_________________

midPoint mailing list

<a moz-do-not-send="true" href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a>

<a moz-do-not-send="true" href="http://lists.evolveum.com/mailman/listinfo/midpoint" rel="noreferrer" target="_blank">http://lists.evolveum.com/mail<wbr>man/listinfo/midpoint</a>


</blockquote></div>
</div>


<fieldset></fieldset>
<pre>______________________________<wbr>_________________
midPoint mailing list
<a moz-do-not-send="true" href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a>
<a moz-do-not-send="true" href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/<wbr>mailman/listinfo/midpoint</a>
</pre>

</blockquote>
</div></div></div>
______________________________<wbr>_________________

midPoint mailing list

<a moz-do-not-send="true" href="mailto:midPoint@lists.evolveum.com">midPoint@lists.evolveum.com</a>

<a moz-do-not-send="true" href="http://lists.evolveum.com/mailman/listinfo/midpoint" rel="noreferrer" target="_blank">http://lists.evolveum.com/<wbr>mailman/listinfo/midpoint</a>


</blockquote></div>
</div>


<fieldset class="mimeAttachmentHeader"></fieldset>
<pre wrap="">_______________________________________________
midPoint mailing list
<a class="moz-txt-link-abbreviated" href="mailto:midPoint@lists.evolveum.com">midPoint@lists.evolveum.com</a>
<a class="moz-txt-link-freetext" href="http://lists.evolveum.com/mailman/listinfo/midpoint">http://lists.evolveum.com/mailman/listinfo/midpoint</a>
</pre>

</blockquote>
</body></html>