On 25 Dec 2017, at 18:41, Juan Hernández <jhernand(a)redhat.com>
wrote:
On 12/25/2017 05:46 PM, Yaniv Kaul wrote:
> While trying to add an instance type, I fail with the error:
> Operation Failed". Fault detail is "[Cannot add Template. Memory size
> (1024MB) cannot exceed maximum memory size (0MB).]
> The code is taken from the example in the SDK, so I'm not sure what I'm
> doing wrong here.
> Code:
> instance_types_service.add(
> types.InstanceType(
> name='myinstancetype',
> description='My instance type',
> memory=1 * 2**30,
> high_availability=types.HighAvailability(
> enabled=True,
> ),
> cpu=types.Cpu(
> topology=types.CpuTopology(
> cores=2,
> sockets=2,
> ),
> ),
> ),
> )
> engine.log:
> 2017-12-25 10:58:19,825-05 INFO
> [org.ovirt.engine.core.bll.AddVmTemplateCommand] (default task-13)
> [265ff704-d89f-471b-8207-fc0e1b8816fd] Lock Acquired to object
> 'EngineLock:{exclusiveLocks='[myinstancetype=TEMPLATE_NAME,
> 703e1265-e160-4a76-82e6-06974156b7b9=TEMPLATE]', sharedLocks='[]'}'
> 2017-12-25 10:58:19,831-05 WARN
> [org.ovirt.engine.core.bll.AddVmTemplateCommand] (default task-13)
> [265ff704-d89f-471b-8207-fc0e1b8816fd] Validation of action 'AddVmTemplate'
> failed for user admin@internal-authz. Reasons:
>
VAR__ACTION__ADD,VAR__TYPE__VM_TEMPLATE,ACTION_TYPE_FAILED_MAX_MEMORY_CANNOT_BE_SMALLER_THAN_MEMORY_SIZE,$maxMemory
> 0,$memory 1024
> 2017-12-25 10:58:19,832-05 INFO
> [org.ovirt.engine.core.bll.AddVmTemplateCommand] (default task-13)
> [265ff704-d89f-471b-8207-fc0e1b8816fd] Lock freed to object
> 'EngineLock:{exclusiveLocks='[myinstancetype=TEMPLATE_NAME,
> 703e1265-e160-4a76-82e6-06974156b7b9=TEMPLATE]', sharedLocks='[]'}'
> 2017-12-25 10:58:19,839-05 DEBUG
> [org.ovirt.engine.core.common.di.interceptor.DebugLoggingInterceptor]
> (default task-13) [265ff704-d89f-471b-8207-fc0e1b8816fd] method: runAction,
> params: [AddVmTemplate,
> AddVmTemplateParameters:{commandId='179df9ed-209c-4882-a19a-b76a4fe1adb8',
> user='null', commandType='Unknown'}], timeElapsed: 33ms
> 2017-12-25 10:58:19,846-05 ERROR
> [org.ovirt.engine.api.restapi.resource.AbstractBackendResource] (default
> task-13) [] Operation Failed: [Cannot add Template. Memory size (1024MB)
> cannot exceed maximum memory size (0MB).]
> TIA,
> Y.
I think this is related to the new `memory_policy.max` attribute that was introduced in
4.1. I think that for virtual machines it has a default value so that it isn't
necessary to explicitly provide it. It may not have a default value fro instance types.
Can you try adding this to the request to create the instance type?
memory_policy=types.MemoryPolicy(
max=1 * 2**30
)
Then try again. If it works I think that we need to fix the engine so that it assigns a
default value, like it does for virtual machines.
The default for VMs comes from the Blank template. There’s no template for instance types,
so it always needs to be provided
_______________________________________________
Devel mailing list
Devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel