kubernetes/pkg/api
k8s-merge-robot c0b788bf49 Merge pull request #24727 from smarterclayton/fast_path_lookup
Automatic merge from submit-queue

Avoid allocations and a reflect.Call in conversion

reflect.Call is fairly expensive, performing 8 allocations and having to
set up a call stack. Using a fairly straightforward to generate switch
statement, we can bypass that early in conversion (as long as the
function takes responsibility for invocation). We may also be able to
avoid an allocation for the conversion scope, but not positive yet.

```
benchmark                    old ns/op     new ns/op     delta
BenchmarkPodConversion-8     14713         12173         -17.26%

benchmark                    old allocs     new allocs     delta
BenchmarkPodConversion-8     80             72             -10.00%

benchmark                    old bytes     new bytes     delta
BenchmarkPodConversion-8     9133          8712          -4.61%
```

@wojtek-t related to #20309
2016-05-06 07:10:18 -07:00
..
endpoints Added Hostname and Subdomain field to Pod.Spec 2016-04-28 10:56:56 -07:00
errors Vet fixes, mostly pass lock by value errors. 2016-04-06 11:27:40 -07:00
install Avoid allocations and a reflect.Call in conversion 2016-04-26 16:42:12 -04:00
meta Redo Unstructured to have accessor methods 2016-05-03 14:07:28 -07:00
pod Fix the rest of the code 2016-04-29 17:12:10 -04:00
resource Add quantity benchmarks 2016-05-05 18:06:19 -04:00
rest Merge pull request #23490 from wojtek-t/remove_set_from_storage_interface 2016-04-13 14:22:05 -07:00
service LB Source Ranges: Move validation into API layer 2016-03-03 10:27:17 -05:00
testapi Split the storage and negotiation parts of Codecs 2016-05-05 12:08:23 -04:00
testing Merge pull request #24748 from Random-Liu/cleanup-with-new-engine-api 2016-05-06 03:16:53 -07:00
unversioned implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00
util "experimental" -> "extensions" 2015-10-09 15:14:03 -07:00
v1 Merge pull request #24748 from Random-Liu/cleanup-with-new-engine-api 2016-05-06 03:16:53 -07:00
validation implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00
context_test.go rewrite go imports 2015-08-05 17:30:03 -07:00
context.go New etcd client modifications part 1 (context support) 2015-10-12 08:45:49 -05:00
conversion_test.go Slightly more effective conversion test (better variety) 2016-04-27 23:11:25 -04:00
conversion.go Small improvements in conversion generator 2016-04-05 02:10:23 +02:00
copy_test.go Refactor diff into sub pkg 2016-03-21 20:21:39 +08:00
deep_copy_generated.go implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00
deep_copy_test.go Switch API objects to not register per version codecs 2016-01-22 01:10:21 -05:00
doc.go Cleanup the content of deprecated V1beta1 2015-11-06 13:42:51 +08:00
field_constants.go Move restclient to its own package 2016-02-29 12:05:13 -08:00
generate_test.go
generate.go rewrite go imports 2015-08-05 17:30:03 -07:00
helpers_test.go implement Node affinity and NodeSelector 2016-02-04 01:53:14 +00:00
helpers.go Merge pull request #24247 from sdminonne/service_loadbalancer_quotas 2016-04-23 10:22:45 -07:00
mapper.go changed NewDefaultRESTMapper to check for a partial package path 2016-02-23 04:24:01 -08:00
meta_test.go Change runtime.Object signature 2015-12-15 13:36:25 -05:00
meta.go Switch api.ObjetaMetaFor to meta.Accessor 2016-03-31 17:52:31 +02:00
node_example.json Updating scripts to use v1 instead of v1beta3 2015-07-01 00:23:16 -07:00
OWNERS Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00
pod_example.json Updating scripts to use v1 instead of v1beta3 2015-07-01 00:23:16 -07:00
ref_test.go register internal types with scheme for reference unit test 2016-03-12 19:06:20 -05:00
ref.go Change runtime.Object signature 2015-12-15 13:36:25 -05:00
register.go Handle streaming serializers more consistently 2016-04-22 11:07:24 -04:00
replication_controller_example.json Merge pull request #10604 from nikhiljindal/v1 2015-07-01 15:54:17 -07:00
requestcontext.go
resource_helpers_test.go Make default format right for nil values 2016-02-15 13:55:33 -05:00
resource_helpers.go Make default format right for nil values 2016-02-15 13:55:33 -05:00
serialization_proto_test.go Split the storage and negotiation parts of Codecs 2016-05-05 12:08:23 -04:00
serialization_test.go Split the storage and negotiation parts of Codecs 2016-05-05 12:08:23 -04:00
types.generated.go implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00
types.go implement inter pod topological affinity and anti-affinity 2016-05-06 06:46:23 +00:00