Skip to content

Commit f145a7f

Browse files
committed
Merge pull request #528 from stephenplusplus/spp--global-remove-socket-limit
global: remove socket limit - fixes #522
2 parents 697526a + 4188eb3 commit f145a7f

File tree

8 files changed

+60
-12
lines changed

8 files changed

+60
-12
lines changed

lib/common/util.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,11 @@
2323

2424
var extend = require('extend');
2525
var GoogleAuth = require('google-auth-library');
26-
var request = require('request');
26+
var request = require('request').defaults({
27+
pool: {
28+
maxSockets: Infinity
29+
}
30+
});
2731
var nodeutil = require('util');
2832
var uuid = require('node-uuid');
2933

lib/datastore/request.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,11 @@
2121
'use strict';
2222

2323
var streamEvents = require('stream-events');
24-
var request = require('request');
24+
var request = require('request').defaults({
25+
pool: {
26+
maxSockets: Infinity
27+
}
28+
});
2529
var through = require('through2');
2630

2731
/**

lib/storage/file.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ var crypto = require('crypto');
2727
var duplexify = require('duplexify');
2828
var fs = require('fs');
2929
var once = require('once');
30-
var request = require('request');
30+
var request = require('request').defaults({
31+
pool: {
32+
maxSockets: Infinity
33+
}
34+
});
3135
var streamEvents = require('stream-events');
3236
var through = require('through2');
3337

test/common/util.js

+11
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,17 @@ function fakeGoogleAuthLibrary() {
3232
.apply(null, arguments);
3333
}
3434

35+
var REQUEST_DEFAULT_CONF;
3536
var request_Override;
3637
function fakeRequest() {
3738
return (request_Override || request).apply(null, arguments);
3839
}
40+
fakeRequest.defaults = function(defaultConfiguration) {
41+
// Ignore the default values, so we don't have to test for them in every API
42+
// call.
43+
REQUEST_DEFAULT_CONF = defaultConfiguration;
44+
return fakeRequest;
45+
};
3946

4047
describe('common/util', function() {
4148
var util;
@@ -72,6 +79,10 @@ describe('common/util', function() {
7279
utilOverrides = {};
7380
});
7481

82+
it('should have set correct defaults on Request', function() {
83+
assert.deepEqual(REQUEST_DEFAULT_CONF, { pool: { maxSockets: Infinity } });
84+
});
85+
7586
describe('arrayize', function() {
7687
it('should arrayize if the input is not an array', function() {
7788
assert.deepEqual(util.arrayize('text'), ['text']);

test/datastore/request.js

+11
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,17 @@ var requestModule = require('request');
2929
var stream = require('stream');
3030
var util = require('../../lib/common/util.js');
3131

32+
var REQUEST_DEFAULT_CONF;
3233
var request_Override;
3334
function fakeRequest() {
3435
return (request_Override || requestModule).apply(null, arguments);
3536
}
37+
fakeRequest.defaults = function(defaultConfiguration) {
38+
// Ignore the default values, so we don't have to test for them in every API
39+
// call.
40+
REQUEST_DEFAULT_CONF = defaultConfiguration;
41+
return fakeRequest;
42+
};
3643

3744
// Create a protobuf "FakeMethod" request & response.
3845
pb.FakeMethodRequest = function() {
@@ -83,6 +90,10 @@ describe('Request', function() {
8390
};
8491
});
8592

93+
it('should have set correct defaults on Request', function() {
94+
assert.deepEqual(REQUEST_DEFAULT_CONF, { pool: { maxSockets: Infinity } });
95+
});
96+
8697
describe('get', function() {
8798
it('should get by key', function(done) {
8899
request.makeReq_ = function(method, req, callback) {

test/pubsub/index.js

+6-4
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,14 @@ var Topic = require('../../lib/pubsub/topic.js');
2626

2727
var request_Cached = request;
2828
var request_Override;
29-
3029
function fakeRequest() {
31-
var args = [].slice.apply(arguments);
32-
var results = (request_Override || request_Cached).apply(null, args);
33-
return results;
30+
return (request_Override || request_Cached).apply(null, arguments);
3431
}
32+
fakeRequest.defaults = function() {
33+
// Ignore the default values, so we don't have to test for them in every API
34+
// call.
35+
return fakeRequest;
36+
};
3537

3638
describe('PubSub', function() {
3739
var PubSub;

test/storage/bucket.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,14 @@ function FakeFile(bucket, name) {
4747

4848
var request_Cached = request;
4949
var request_Override;
50-
5150
function fakeRequest() {
5251
return (request_Override || request_Cached).apply(null, arguments);
5352
}
53+
fakeRequest.defaults = function() {
54+
// Ignore the default values, so we don't have to test for them in every API
55+
// call.
56+
return fakeRequest;
57+
};
5458

5559
var eachLimit_Override;
5660

test/storage/file.js

+12-4
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,18 @@ var fakeUtil = extend({}, util, {
5858
}
5959
});
6060

61+
var REQUEST_DEFAULT_CONF;
6162
var request_Cached = request;
6263
var request_Override;
63-
6464
function fakeRequest() {
65-
var args = util.toArray(arguments);
66-
var results = (request_Override || request_Cached).apply(null, args);
67-
return results;
65+
return (request_Override || request_Cached).apply(null, arguments);
6866
}
67+
fakeRequest.defaults = function(defaultConfiguration) {
68+
// Ignore the default values, so we don't have to test for them in every API
69+
// call.
70+
REQUEST_DEFAULT_CONF = defaultConfiguration;
71+
return fakeRequest;
72+
};
6973

7074
var configStoreData = {};
7175
function FakeConfigStore() {
@@ -125,6 +129,10 @@ describe('File', function() {
125129
request_Override = null;
126130
});
127131

132+
it('should have set correct defaults on Request', function() {
133+
assert.deepEqual(REQUEST_DEFAULT_CONF, { pool: { maxSockets: Infinity } });
134+
});
135+
128136
describe('initialization', function() {
129137
it('should throw if no name is provided', function() {
130138
assert.throws(function() {

0 commit comments

Comments
 (0)