<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    Well, i added the test about a week ago.  The test works for me, it
    demonstrates failure (a null reference exception) in the case where
    the patch i wrote isn't applied, and it passes when the patch is
    applied.  I realize i'm the only one to report this problem, so it's
    low priority, but i wanted to mention to whomever is responsible
    that if they have any questions, i'm here for now (that is: I still
    subscribe to the list).<br>
    <br>
    To me, again, the patch is straightforward and obviously needed --
    There's a retry point and the first thing it checks in retry is if
    'result==null' (to enter the while loop) and that retry point is
    only hit under one circumstance, and in that circumstance, result is
    never null, so as a result, if the intention was for it to be
    anything other than null the retry point would be elsewhere. 
    Therefore, it should be blatantly obvious to anyone reading the
    code, that setting result to null so the check at the retry point
    can enter the while loop at the retry point, is the only thing that
    is needed to make it work.<br>
    <br>
    To debug this originally, i inserted trace points to confirm what
    was going on.  It was stuck endlessly jumping to the retry point and
    not doing anything other than jumping directly to the retry point
    again and again until it got tired of that and failed, and every
    time after the first, it never enterred the while loop at the retry
    point, begging the question, if null wasn't intended (which it was),
    why not move the retry point elsewhere below the while loop.<br>
    <br>
    If someone thinks this breaks something else, please let me know.<br>
    <br>
    It's on github -
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="https://github.com/mono/mono/pull/283">https://github.com/mono/mono/pull/283</a>
    ...  I understand if my nunit test is the reason it is rejected, it
    was the most quick/straightforward way to do the tests, it was
    extracted from sqlconnection.open() extracting only the code that
    was required to set up the TdsConnectionPool GetConnection() call it
    uses.<br>
    <br>
    --rob<br>
    <br>
    On 05/02/2012 07:28 AM, Rodrigo Kumpera wrote:
    <blockquote
cite="mid:CACmR+BAB9oVZ1zbaEq=wAA0A5GSQFr4WO3XsU=5aPKAMu_qz_w@mail.gmail.com"
      type="cite">Patches are much more likely to be accepted if they
      include tests. It's up to the TDS driver maintainers.<br>
      <br>
      <div class="gmail_quote">On Wed, May 2, 2012 at 8:26 AM, Rob
        Wilkens <span dir="ltr"><<a moz-do-not-send="true"
            href="mailto:robwilkens@gmail.com" target="_blank">robwilkens@gmail.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"> [resending reply via
            reply to list only, left off list in previous reply]
            <div class="im"><br>
              <br>
              I already did the pull request on github -- and i'm not
              sure how to include the tests (I only commented that i ran
              the tests on github in the pull comments).  Or do you mean
              i have to somehow generate my own tests, which would be
              difficult because this requires, i think, a functional
              microsoft sql server for it to have access to to reproduce
              the error. <br>
              <br>
              -Rob <br>
              <br>
              On 05/02/2012 07:21 AM, Rodrigo Kumpera wrote: </div>
            <div>
              <div class="h5">
                <blockquote type="cite">Please make it a pull request on
                  github with tests included.
                  <div><br>
                  </div>
                  <div><br>
                    <br>
                    <div class="gmail_quote">On Tue, May 1, 2012 at
                      12:55 PM, Rob Wilkens <span dir="ltr"><<a
                          moz-do-not-send="true"
                          href="mailto:robwilkens@gmail.com"
                          target="_blank">robwilkens@gmail.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"> <br>
                          Ok, I looked up the 'selfish' way to submit a
                          patch from the contributing section, and i
                          think the below suffices as a patch, does
                          anyone disagree?<br>
                          <br>
                          I am referring to : <a moz-do-not-send="true"
href="http://www.mono-project.com/Contributing" target="_blank">http://www.mono-project.com/Contributing</a>
                          towards the bottom of the page where it simply
                          says to submit the patch to the mailing list.<br>
                          <br>
                          Does the below suffice as a "patch" or should
                          i figure out the 'github' way which i thought
                          i saw elsewhere.<br>
                          <br>
                          -Rob<br>
                          <br>
                          On 05/01/2012 11:49 AM, Rob Wilkens wrote:
                          <blockquote type="cite">
                            <pre>I found out the fix for the error i reported with multiple invalid
login attempts...  It's very simple...

Mono.Data.TdsClient.TdsConnectionPool.cs

In the above file, in GetConnection(), either before:

goto retry

or after the initial

retry:

(either place should be fine)

result needs to be set to null -- that is:

result=null;

(in my testing, i put it before goto retry)

Otherwise, it keeps retrying because result has never been reset
before the while loop you are trying to enter.

I guess my next step is figuring out how to navigate github so i can submit it.

Sorry for being so public and crowding the mailing list with this.  If
someone else wants to volunteer to submit the patch for me, please
speak up.  I'll otherwise figure it out.

-Rob
</pre>
                          </blockquote>
                          <br>
                        </div>
                        <br>
                        _______________________________________________<br>
                        Mono-devel-list mailing list<br>
                        <a moz-do-not-send="true"
                          href="mailto:Mono-devel-list@lists.ximian.com"
                          target="_blank">Mono-devel-list@lists.ximian.com</a><br>
                        <a moz-do-not-send="true"
                          href="http://lists.ximian.com/mailman/listinfo/mono-devel-list"
                          target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
                        <br>
                      </blockquote>
                    </div>
                    <br>
                  </div>
                </blockquote>
                <br>
              </div>
            </div>
          </div>
          <br>
          _______________________________________________<br>
          Mono-devel-list mailing list<br>
          <a moz-do-not-send="true"
            href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
          <a moz-do-not-send="true"
            href="http://lists.ximian.com/mailman/listinfo/mono-devel-list"
            target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
          <br>
        </blockquote>
      </div>
      <br>
    </blockquote>
    <br>
  </body>
</html>