$.ajax timeout, next request is err: "abc was not called"

$.ajax timeout, next request is err: "abc was not called"

Basically what I'm trying to do is:
1) make 1st a jsonp get request to a url
      This call may get 404
2) if the first call fails, make a jsonp get request to a different url

If the first call fails due to timeout (404 error) then the second call fails with an error that the first call jsonpCallback ("abc") was not called. I don't understand how the first call could be effecting the second call.

Here's some example code (it's more code than necessary but for clarity sake):
  1.                         var failed = false;
  2.                         var secondAttempt = false;
  3.                         var json = {
  4.                             userLogin: username,
  5.                             password: password,
  6.                             database: dbName
  7.                         };
  8.                         var done = function (newResults) {
  9.                           console.log("Done")
  10.                         };
  11.                         var fail = function (jqXHR, status, error) {
  12.                             failed = true;
  13.                             this.jsonpCallback = null;
  14.                             if(secondAttempt){
  15.                                 console.log("Failed")
  16.                             }
  17.                         };
  18.                         var always = function () {
  19.                             if(failed && !secondAttempt){
  20.                                 secondAttempt = true;
  21.                                 $.ajax({
  22.                                     type: "GET",
  23.                                     url: serverUrl + requestPath + "Authenticate" + "?JSONP=?",
  24.                                     dataType: "jsonp",
  25.                                     crossDomain: true,
  26.                                     timeout: 3000,
  27.                                     data: jsonp,
  28.                                     jsonpCallback: "abc"
  29.                                 })
  30.                                     .done(done)
  31.                                     .fail(fail)
  32.                                     .always(always);
  33.                             }
  34.                         };
  35.                         $.ajax({
  36.                             type: "GET",
  37.                             url: serverUrl + newRequestPath + "Authenticate" + "?JSONP=?",
  38.                             dataType: "jsonp",
  39.                             crossDomain: true,
  40.                             timeout: 3000,
  41.                             data: json,
  42.                             jsonpCallback: "xyz"
  43.                         })
  44.                             .done(done)
  45.                             .fail(fail)
  46.                             .always(always);