passenger 5.0.0.rc1 → 5.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of passenger might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YWY1YWQzNTEzOGZmMDA4YmI2YTEwNjdkZTExMDllZDE5MWIzMGQ3ZA==
4
+ YzkyZGI4ZTVlOGU4MzAwYjYxNzcxMWUwM2I0NGM0MDVjOTM3ZWVmYw==
5
5
  data.tar.gz: !binary |-
6
- ZGQzYjM2ZDZiNjc1YjA5NDMzN2NkMGQwZWUwYTk0NjU5MWRjYmMyNQ==
6
+ ZmQ2ODI5ZTE3NzczZGRlMjE1YTQ5NTdlN2ZkOTQxYTEyNTUzODA1OA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OGU1OGZmNDAzZDY4MThmY2YxNTFlNGY5OWEwZTFiYzhjMmU1MTAxN2UwYWIw
10
- M2NhYjA2NmU5N2UwMWQyNzQ4NmUxYjcwMGIxM2E2MjI5OWQ4NDhmNDRlM2Ux
11
- M2I1ZDEwMzBhNjJiNDNlZTI3MDc1OGQ5MDZlMzA2Zjg5NzlkNDU=
9
+ MWY3MzEzY2UzNDAyOTEwYjg1ZWU1YmI2ZDM2OWNmN2JmMGExMjRjMDMyNjBk
10
+ NWQxNWRhOTZiMWFhZTE3MjU0MmNiZDZjNWQ3YTJkMzcyYzNmMmFkZTgwMzlk
11
+ MzE2Mzk0NTA3ZTQ1NGVkZjViNWMyZDYwNGM0YWZhMGMwNjY5MmY=
12
12
  data.tar.gz: !binary |-
13
- MWQ0YTYxZGRiNWZjNDAxZTFlYTgzNzU2YTgyZmFhODJmYjg3MjE1ODI4YzE4
14
- MmFhNGM4OTEzNDQ4M2U5MmZiMzQ1OTk1NzYyZDdjOTU0ZjQxNThiMjM3OTJk
15
- ODEwZTExZGY2YWU0MTVkOTUxY2U3NGE5M2Y3MjdhYjkwNjRhYzI=
13
+ YWZjN2JkMTYwZjAxZDM3NmZkMDExZjM1YTMwODUyZDc1ZjllZDE4N2JmOWYz
14
+ NTdiNTcyNWNmYjQwMzYwMTdlOWQ3N2ZkM2RhNTk3ZTIzNTlmYTE4NWUyZTVj
15
+ MThjNDQzMzNmZjY3MGNlOTRiNzEzOWVmZGNkZjcyYzBhYmEyMDY=
checksums.yaml.gz.asc CHANGED
@@ -2,11 +2,11 @@
2
2
  Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
3
3
  Comment: GPGTools - http://gpgtools.org
4
4
 
5
- iQEcBAABAgAGBQJU5fgMAAoJECrHRaUKISqMdiEH/A95x8IXUvRhHFkvyoaspc4/
6
- CfFfHjwfljWhjwstBpwSuAcFrv4QYMBV331qzQRZM2yI9gln/HaOfaeDSVX7rlyM
7
- 1gd1c/o6GWlbymy/81+3lC4oNy1/nkP37gZH+QQ+42Nv+UHpY6qzMt1TFztqhOfv
8
- 5n1dPZtJMOpsdo1mGgcZeebDuvKsRt1j6PixU2vVJc90L/bd27kcZnKjXn73daol
9
- idBO8GEKfoUxm7VsoAxESHZLloUI7RWHRntvfW39+EnOyzduZBUFLUCWgpHDewJI
10
- r3zkbbcrC0q77lVwGDlZMN5s03TuxFWTTIcxhGtkOIkC7fnzD6qm+/eXDPOp/48=
11
- =arpK
5
+ iQEcBAABAgAGBQJU5zPQAAoJECrHRaUKISqM5EAH/14wc1xeU1EglMA+EXM2mows
6
+ 2i17hxn7GzsRiSOeo+F1Xm5fKqQ7NauefjH3Zrz6WAyaJyakwhkkuJYw6z+3Fp1i
7
+ pqrT4puKOQJ3G/2j1hkHbmiRyXLgWUu5Z5gnf45689Nhq80vjZW8X4bBaqeh6ZuR
8
+ 67Ch4c8z3JeeSYz05A+S8Evg3RY9SA93lsar+BdTEopGrNhfx4p0DHlb2YwFuMkh
9
+ wJCHG0K2AFleOmrWWaUH9Wg7s8rT4C6Lxy8Hg4Xmda3FF71iahy/19D4EmuuC1+s
10
+ L8wupN2tNq0OwqGwoNFb44QTiistw7C15TSbd0wQQ2Yp7O+ZyK5r+lI2WWY8gaQ=
11
+ =SoHV
12
12
  -----END PGP SIGNATURE-----
data/CHANGELOG CHANGED
@@ -1,3 +1,10 @@
1
+ Release 5.0.0 release candidate 2
2
+ ---------------------------------
3
+
4
+ * Fixes an installation problem with the Ruby gem due to incorrect Makefile generation. Closes GH-1382.
5
+ * More helpful message when request queue is full. Closes GH-1375.
6
+
7
+
1
8
  Release 5.0.0 release candidate 1
2
9
  ---------------------------------
3
10
 
@@ -444,9 +444,8 @@ public:
444
444
  callback));
445
445
  return true;
446
446
  } else {
447
- P_WARN("Request queue is full. Returning an error");
448
447
  postLockActions.push_back(boost::bind(GetCallback::call,
449
- callback, SessionPtr(), boost::make_shared<RequestQueueFullException>()));
448
+ callback, SessionPtr(), boost::make_shared<RequestQueueFullException>(newOptions.maxRequestQueueSize)));
450
449
 
451
450
  HookScriptOptions hsOptions;
452
451
  if (prepareHookScriptOptions(hsOptions, "queue_full_error")) {
@@ -1472,7 +1472,7 @@ Group::getResourceLocator() const {
1472
1472
 
1473
1473
  /* Given a hook name like "queue_full_error", we return HookScriptOptions filled in with this name and a spec
1474
1474
  * (user settings that can be queried from agentsOptions using the external hook name that is prefixed with "hook_")
1475
-
1475
+ *
1476
1476
  * @return false if the user parameters (agentsOptions) are not available (e.g. during ApplicationPool2_PoolTest)
1477
1477
  */
1478
1478
  bool
@@ -112,7 +112,7 @@
112
112
 
113
113
  #define NGINX_DOC_URL "https://www.phusionpassenger.com/documentation/Users%20guide%20Nginx.html"
114
114
 
115
- #define PASSENGER_VERSION "5.0.0.rc1"
115
+ #define PASSENGER_VERSION "5.0.0.rc2"
116
116
 
117
117
  #define POOL_HELPER_THREAD_STACK_SIZE 262144
118
118
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2010-2013 Phusion
3
+ * Copyright (c) 2010-2015 Phusion
4
4
  *
5
5
  * "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
6
  *
@@ -396,13 +396,22 @@ public:
396
396
  * the getWaitlist queue was full.
397
397
  */
398
398
  class RequestQueueFullException: public GetAbortedException {
399
+ private:
400
+ string msg;
401
+
399
402
  public:
400
- RequestQueueFullException()
403
+ RequestQueueFullException(unsigned int maxQueueSize)
401
404
  : GetAbortedException(oxt::tracable_exception::no_backtrace())
402
- { }
405
+ {
406
+ stringstream str;
407
+ str << "Request queue full (configured max. size: " << maxQueueSize << ")";
408
+ msg = str.str();
409
+ }
410
+
411
+ virtual ~RequestQueueFullException() throw() {}
403
412
 
404
413
  virtual const char *what() const throw() {
405
- return "Request queue is full";
414
+ return msg.c_str();
406
415
  }
407
416
  };
408
417
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * Phusion Passenger - https://www.phusionpassenger.com/
3
- * Copyright (c) 2011-2014 Phusion
3
+ * Copyright (c) 2011-2015 Phusion
4
4
  *
5
5
  * "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
6
  *
@@ -208,7 +208,7 @@ reportSessionCheckoutError(Client *client, Request *req, const ExceptionPtr &e)
208
208
  boost::shared_ptr<RequestQueueFullException> e2 =
209
209
  dynamic_pointer_cast<RequestQueueFullException>(e);
210
210
  if (e2 != NULL) {
211
- writeRequestQueueFullExceptionErrorResponse(client, req);
211
+ writeRequestQueueFullExceptionErrorResponse(client, req, e2);
212
212
  return;
213
213
  }
214
214
  }
@@ -223,7 +223,7 @@ reportSessionCheckoutError(Client *client, Request *req, const ExceptionPtr &e)
223
223
  }
224
224
 
225
225
  void
226
- writeRequestQueueFullExceptionErrorResponse(Client *client, Request *req) {
226
+ writeRequestQueueFullExceptionErrorResponse(Client *client, Request *req, const boost::shared_ptr<RequestQueueFullException> &e) {
227
227
  TRACE_POINT();
228
228
  const LString *value = req->secureHeaders.lookup("!~PASSENGER_REQUEST_QUEUE_OVERFLOW_STATUS_CODE");
229
229
  int requestQueueOverflowStatusCode = 503;
@@ -232,6 +232,9 @@ writeRequestQueueFullExceptionErrorResponse(Client *client, Request *req) {
232
232
  requestQueueOverflowStatusCode = stringToInt(
233
233
  StaticString(value->start->data, value->size));
234
234
  }
235
+
236
+ SKC_WARN(client, "Returning HTTP " << requestQueueOverflowStatusCode << " due to: " << e->what());
237
+
235
238
  endRequestWithSimpleResponse(&client, &req,
236
239
  "<h1>This website is under heavy load</h1>"
237
240
  "<p>We're sorry, too many people are accessing this website at the same "
@@ -31,7 +31,7 @@ virtual unsigned int getClientName(const Client *client, char *buf, size_t size)
31
31
  char *pos = buf;
32
32
  const char *end = buf + size - 1;
33
33
  pos += uintToString(threadNumber, pos, end - pos);
34
- pos = appendData(pos, end, ".", 1);
34
+ pos = appendData(pos, end, "-", 1);
35
35
  pos += uintToString(client->number, pos, end - pos);
36
36
  *pos = '\0';
37
37
  return pos - buf;
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # Phusion Passenger - https://www.phusionpassenger.com/
3
- # Copyright (c) 2010-2014 Phusion
3
+ # Copyright (c) 2010-2015 Phusion
4
4
  #
5
5
  # "Phusion Passenger" is a trademark of Hongli Lai & Ninh Bui.
6
6
  #
@@ -28,9 +28,11 @@
28
28
  # Create a dummy Makefile to prevent 'gem install' from borking out.
29
29
  File.open("Makefile", "w") do |f|
30
30
  f.puts "all:"
31
- f.puts " true"
31
+ f.puts "\ttrue"
32
32
  f.puts "install:"
33
- f.puts " true"
33
+ f.puts "\ttrue"
34
+ f.puts "clean:"
35
+ f.puts "\ttrue"
34
36
  end
35
37
 
36
38
  # Don't do anything on Windows. We don't support Windows but exiting now
@@ -30,7 +30,7 @@ module PhusionPassenger
30
30
 
31
31
  PACKAGE_NAME = 'passenger'
32
32
  # Run 'rake ext/common/Constants.h' after changing this number.
33
- VERSION_STRING = '5.0.0.rc1'
33
+ VERSION_STRING = '5.0.0.rc2'
34
34
 
35
35
  PREFERRED_NGINX_VERSION = '1.6.2'
36
36
  NGINX_SHA256_CHECKSUM = 'b5608c2959d3e7ad09b20fc8f9e5bd4bc87b3bc8ba5936a513c04ed8f1391a18'
data.tar.gz.asc CHANGED
@@ -2,11 +2,11 @@
2
2
  Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
3
3
  Comment: GPGTools - http://gpgtools.org
4
4
 
5
- iQEcBAABAgAGBQJU5fgMAAoJECrHRaUKISqMhBQH/i667vaEo5PDWPZTprBUD5Xu
6
- lYLsnc4g5TyWYG309u3aOfd3GnZ+hI8gkR3daBZ2SmJWLI3uLfNpNielH8j9m+G8
7
- JgjLgKw/UiIwrfvqyQHSaCiN7UDx8qM56kYePUFA3GL4WgsTB5nXFq6TUaXp2CqR
8
- tOB38iLPL978foqMhu1kNiT+7IFj4OZ/L037EZYSGsOvmGF/fSQkQ4eEFa6AH4md
9
- lLaeEvqaFQculPUFrg2GNjv39fnCNrmDsm+XuMDNf55SX1hma5LOVXnbIufesr//
10
- ls5lAVBzlmdE9GlCuj4UfdW8MceHvUqm98/dFt5btoB5kaz0xEVPWeEfQMN8FAE=
11
- =HsCD
5
+ iQEcBAABAgAGBQJU5zPQAAoJECrHRaUKISqMfIMH/ibyDpj/kSqVKpaMJx9B1UBV
6
+ tlfqXzlVT9rDLbsB6B8yFy2kXKKirRUkvFQmXw3l0xivi1xlyBcgW7PA9fkXeSvK
7
+ oUfMkBKaZYKwpcBwC0Pnd3aKAZiD9sEfSrhR73xZSTKZQTJYomPSLmWLJikq/zX/
8
+ iidzjpdQ2OkVxY8LdQj9FH+I2Ebazf1rKiSaY0OSNE5M4kYlm425QfBnfHvjp7Vr
9
+ sv1zlxZtkAiMNsp0khBLb2203xYyy9X8DyhqChO8GuAbA9jfEmiveUNokx+oFCdO
10
+ LOojfJN3f9LhcL2igWy99KmseREjty4q5qli0TFCxCCI4oKka8eUJn9lwX0PHWE=
11
+ =O6BO
12
12
  -----END PGP SIGNATURE-----
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: passenger
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.0.rc1
4
+ version: 5.0.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Phusion - http://www.phusion.nl/
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-19 00:00:00.000000000 Z
11
+ date: 2015-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
metadata.gz.asc CHANGED
@@ -2,11 +2,11 @@
2
2
  Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
3
3
  Comment: GPGTools - http://gpgtools.org
4
4
 
5
- iQEcBAABAgAGBQJU5fgMAAoJECrHRaUKISqM2W8IAIiE6ZNzN5Z8ZOJl04ujPwph
6
- HsyNPbuc/hokEeFf2rxsNM9T6JgsihckDMWHInNpEGx1xM+5sMNJ8Qka4RW4SImA
7
- Neb9Q8LIMI5onbNut1u4r8NZAd6D+LJEwyvMoKW5BLtVTLM4nDcN9ck+FLXG+Hi4
8
- /gclwWQixnxeMyi209hJpQrd6xzXmbj7yhsh3IruunnZYnMEVtyutZuLyTBPTg8g
9
- 5JyukZ4M7z0MyQRmSDWm0BsVUjjDwz1PWyfoYn8rfTGCbKF5DioKQlKkT1RI46EL
10
- gpJzP4IzyZTSOmbBH47LWudsDG2sYETcKQHluxX5fHgP9d/RRUJYGFWOrwhT9zI=
11
- =VpfF
5
+ iQEcBAABAgAGBQJU5zPQAAoJECrHRaUKISqMdhUH/2gCqNzD6k9SF95PpPkvpHYd
6
+ eat4jQTLH7kLa/RznZrRSTUE4O6Yr9uvCIAsG5oFFEUEDEuz4cn4V5asWXpjON9b
7
+ QE3w8+TU2MsVS6C34EDU/Krinf/+3faQxD/JxVaPlSDiLo3PkHIt6IZBQQLGFSYI
8
+ FqCx/ipKfnhQJUtWLQwwdQS35qSFYZ/OcY0fgLiM2/YOXW+m/mNTDoxhOPqTV3iD
9
+ aTJj+JMBYuvFfkrNfPRYxt4ZilTKFzwGeAFQOCL8tE/2iMbJ3i4WCW+QeX94qqQN
10
+ G2iuj+IT1HKnfkdlq1mnhO1JcYjREkxJXlHg17GKhC5cyAPmQ5UQDKBXVlcap+w=
11
+ =xp1q
12
12
  -----END PGP SIGNATURE-----