[Python] pass api_client configuration to model deserialize (#13922)

The if not passed the models create a new configuration object which
configures logging and determines cpu count every time.
This causes extreme performance issues when deserializing larger sets of
items.

See also
https://github.com/kubernetes-client/python/issues/1921
This commit is contained in:
Julian Taylor 2022-11-07 09:05:14 +01:00 committed by GitHub
parent 363906fda3
commit 3dc8403e10
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 5 additions and 0 deletions

View File

@ -715,6 +715,7 @@ class ApiClient(object):
value = data[klass.attribute_map[attr]] value = data[klass.attribute_map[attr]]
kwargs[attr] = self.__deserialize(value, attr_type) kwargs[attr] = self.__deserialize(value, attr_type)
kwargs["local_vars_configuration"] = self.configuration
instance = klass(**kwargs) instance = klass(**kwargs)
if has_discriminator: if has_discriminator:

View File

@ -692,6 +692,7 @@ class ApiClient(object):
value = data[klass.attribute_map[attr]] value = data[klass.attribute_map[attr]]
kwargs[attr] = self.__deserialize(value, attr_type) kwargs[attr] = self.__deserialize(value, attr_type)
kwargs["local_vars_configuration"] = self.configuration
instance = klass(**kwargs) instance = klass(**kwargs)
if has_discriminator: if has_discriminator:

View File

@ -691,6 +691,7 @@ class ApiClient(object):
value = data[klass.attribute_map[attr]] value = data[klass.attribute_map[attr]]
kwargs[attr] = self.__deserialize(value, attr_type) kwargs[attr] = self.__deserialize(value, attr_type)
kwargs["local_vars_configuration"] = self.configuration
instance = klass(**kwargs) instance = klass(**kwargs)
if has_discriminator: if has_discriminator:

View File

@ -693,6 +693,7 @@ class ApiClient(object):
value = data[klass.attribute_map[attr]] value = data[klass.attribute_map[attr]]
kwargs[attr] = self.__deserialize(value, attr_type) kwargs[attr] = self.__deserialize(value, attr_type)
kwargs["local_vars_configuration"] = self.configuration
instance = klass(**kwargs) instance = klass(**kwargs)
if has_discriminator: if has_discriminator:

View File

@ -691,6 +691,7 @@ class ApiClient(object):
value = data[klass.attribute_map[attr]] value = data[klass.attribute_map[attr]]
kwargs[attr] = self.__deserialize(value, attr_type) kwargs[attr] = self.__deserialize(value, attr_type)
kwargs["local_vars_configuration"] = self.configuration
instance = klass(**kwargs) instance = klass(**kwargs)
if has_discriminator: if has_discriminator: