Commit Graph

356 Commits

Author SHA1 Message Date
Craig Tiller 3e94de19cd Merge branch 'optionalize_resolvers' into optionalize_client_config 2016-04-01 12:57:28 -07:00
Craig Tiller 5dec6e0e75 Merge github.com:grpc/grpc into optionalize_resolvers 2016-04-01 12:28:07 -07:00
Jan Tattermusch 4eb36c0af1 Merge pull request #6001 from ctiller/optionalize_census
Optionalize census
2016-04-01 11:15:48 -07:00
Jan Tattermusch 1fe942f777 Merge pull request #5700 from bluecmd/ssl-defaults
ssl_channel_credentials to use None by default
2016-03-31 17:56:29 -07:00
Craig Tiller d4c9833187 Reposition files to optionalize client_config system 2016-03-31 13:45:47 -07:00
Craig Tiller dfa160ef73 Merge branch 'optionalize_census' into optionalize_resolvers 2016-03-31 13:10:36 -07:00
Craig Tiller bbf85f4ee7 Merge github.com:grpc/grpc into optionalize_census 2016-03-31 13:09:50 -07:00
Craig Tiller 65938df105 Optionalize name resolvers 2016-03-31 13:08:49 -07:00
Craig Tiller 31efd7e864 Merge github.com:grpc/grpc into copyright-fix 2016-03-31 11:08:13 -07:00
Craig Tiller f3f099ada9 Merge github.com:grpc/grpc into optionalize_census 2016-03-31 10:38:58 -07:00
Nicolas Noble 7894e60306 Merge pull request #6000 from ctiller/optionalize_roundrobin
Optionalize load balancing policies
2016-03-31 09:17:54 -07:00
Craig Tiller 64a12c55df Merge github.com:grpc/grpc into copyright-fix 2016-03-31 07:49:58 -07:00
Craig Tiller 6169d5f7b0 Update copyrights 2016-03-31 07:46:18 -07:00
Nicolas Noble a5dc80d22a Merge pull request #5691 from ctiller/idempotent
Idempotent request support for core
2016-03-30 17:05:43 -07:00
Jan Tattermusch c42b98200f Merge pull request #5894 from soltanmm/stop-that
Don't allow precompiled binaries in tests
2016-03-30 15:09:46 -07:00
Craig Tiller 9557869e15 Merge branch 'optionalize_roundrobin' into optionalize_census 2016-03-29 13:53:50 -07:00
Craig Tiller 943cdf99e9 Swap header/src into the right order 2016-03-29 13:27:56 -07:00
Craig Tiller ad46ecfeba Merge branch 'optionalize_roundrobin' into optionalize_census 2016-03-29 09:45:16 -07:00
Craig Tiller 796474c792 Move proto code under ext/.../grpclb 2016-03-29 09:43:28 -07:00
Craig Tiller 8f8e9f9b53 Build Census as a grpc plugin 2016-03-29 09:41:28 -07:00
Craig Tiller fb43385204 Make plugin registries work 2016-03-29 08:51:07 -07:00
Craig Tiller 023caf1846 Refactor build to have lb policies as extensions 2016-03-29 08:00:30 -07:00
Craig Tiller c2011586fa Merge github.com:grpc/grpc into idempotent 2016-03-28 22:53:34 -07:00
Craig Tiller 14e0d9862f Begin optionalizing lb policies: initial code movement 2016-03-28 17:11:26 -07:00
Craig Tiller 3bd9695939 Merge github.com:grpc/grpc into idempotent 2016-03-28 12:43:02 -07:00
Craig Tiller 44cc10b02e Add uses clauses to filegroups to ease dependency management 2016-03-28 10:45:29 -07:00
Craig Tiller f0555b3e1c Declare filegroups for chttp2 2016-03-28 10:19:24 -07:00
Craig Tiller c7762a8c24 Move chttp2 related files under ext/ 2016-03-28 10:13:08 -07:00
Craig Tiller f23078cbd3 Stage #1 of core breakup: move everything under lib 2016-03-25 17:07:29 -07:00
Masood Malekghassemi 7d8ac466d6 Don't allow precompiled binaries in tests
Before it was possible for precompiled binaries of the Cython layer to
be downloaded during a test run if the metadata of the host machine's
gRPC Python project matched the metadata of a file in cloud storage. Now
we disallow this, and fix a bug where the relevant environment variable
was ineffectual.
2016-03-24 12:48:47 -07:00
Leifur Halldor Asgeirsson ae2195667d fixes to tests for py2/3 syntax compatibility 2016-03-23 20:50:36 -04:00
Jan Tattermusch df7e4228df Merge pull request #5916 from leifurhauks/py3_str_bytes_in_links_service_and_beta_server
Python 3: fix a bytes/str runtime issue
2016-03-23 16:42:12 -07:00
Jan Tattermusch 8ce3b1ad89 Merge pull request #5383 from miselin/add_request_parsing
Add HTTP request parsing
2016-03-23 14:47:40 -07:00
Jan Tattermusch 68f5a3bd82 Merge pull request #5368 from leifurhauks/py3_test_compat
Python: py3 compatibility for test runner & loader
2016-03-23 14:43:35 -07:00
Jan Tattermusch f1050f6f4a Merge pull request #5755 from ahedberg/unix_sockets_optional
Make unix sockets optional
2016-03-23 08:47:12 -07:00
Jan Tattermusch e3af44e2e9 Merge pull request #5914 from thought-machine/fix_slow_string_read
Make grpc-python ByteBuffer.bytes() linear
2016-03-22 20:03:07 -07:00
Matthew Iselin 1824f0519f Add HTTP request parsing.
This extends the existing http parser to support requests as well as responses.

httpcli continues to exist and work as it has previously, though in the new
directory src/core/http (to reflect the fact the directory now contains code
relevant to parsing requests, which httpcli would not generally involve itself
in).
2016-03-23 13:22:32 +11:00
Leifur Halldor Asgeirsson b9501bcb0b Python 3: fix a bytes/str runtime issue
On python3, in grpc._links.service._Kernel._on_service_acceptance_event,
there is a runtime TypeError:

```
_on_service_acceptance_event
    group, method = service_acceptance.method.split('/')[1:3]
TypeError: 'str' does not support the buffer interface
```

It is fixed by using a bytes literal (`b'/'`) instead of a string literal.

This exposed another issue in grpc.beta._server where an exception was being
raised with a bytes literal for a message (a string should be used instead.)
2016-03-22 20:52:37 -04:00
Jan Tattermusch 39fd22193b Merge pull request #5899 from dgquintas/uchannels_kthxbai
removed uchannels
2016-03-22 14:03:45 -07:00
alex ce37938255 Make grpc-python ByteBuffer.bytes() linear cost.
Currently ByteBuffer.bytes() reads from the underlying grpc byte_buffer
a slice at a time, and appends each to a Python string (bytes). In
Python strings are immutable, so appending creates a new string by
copying the previous data.  This means the current implementation is
quadratic.

The effect is very noticeable when messages have repeated (or large)
string fields.  We traced execution between two services and observed
that when the payload size approached 600kb, the receiving service took
~10s at full CPU to read a response that had taken fractions of a second
the send over the network.

This commit changes ByteBuffer.bytes() to use an intermediate bytearray,
instead of strings, for the in-progress bytes.  Once all slices are
read, the buffer is converted to a string.
2016-03-22 17:49:56 +00:00
Nicolas Noble 62dcaa2635 Merge pull request #5650 from leifurhauks/py3_iteritems
replace uses of iteritems with six.iteritems
2016-03-21 16:25:29 -07:00
David Garcia Quintas fb349b9f71 removed uchannels 2016-03-21 15:37:20 -07:00
Craig Tiller c65ed870ed Merge github.com:grpc/grpc into idempotent 2016-03-21 10:49:14 -07:00
Jan Tattermusch b08ee7a260 Merge pull request #5653 from leifurhauks/py3_iterators
make iterators python3-compatible
2016-03-21 10:44:09 -07:00
Jan Tattermusch 20792927fe Merge pull request #5651 from leifurhauks/py3_metaclasses
specify metaclasses in a py3-compatible way
2016-03-21 10:43:48 -07:00
Craig Tiller 44654553de Merge github.com:grpc/grpc into idempotent 2016-03-21 09:04:06 -07:00
Craig Tiller 3448887c90 Merge github.com:grpc/grpc into filter-selection 2016-03-21 07:08:50 -07:00
Jan Tattermusch 68edc15796 Merge pull request #5679 from makdharma/master
Cleaned up installation/test requirement fetching
2016-03-20 15:54:03 -07:00
Christian Svensson ce2a2d041d ssl_channel_credentials to use None by default
Since the default behavior is quite sane, support just calling ssl_channel_credentials() without explicitly specifying ssl_channel_credentials(None, None, None).

This changes the pattern ssl_channel_credentials(server_crt, None, None) to ssl_channel_credentials(server_crt)

Signed-off-by: Christian Svensson <blue@cmd.nu>
2016-03-20 18:43:11 +01:00
Craig Tiller de7edf83cc Merge github.com:grpc/grpc into backoff2
Reintroduce flakiness flag for tests: lb_policies_test is inherently flaky and I don't have time to deflake this week
2016-03-20 09:12:16 -07:00