<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
hi<br>
Whey I try to run magnum service-list to list all services (seems
now we only have m-cond service), it m-cond is down(which means no
conductor at all),<br>
API won't response and will return a timeout error.<br>
<br>
taget@taget-ThinkStation-P300:~/devstack$ magnum service-list<br>
ERROR: Timed out waiting for a reply to message ID
fd1e9529f60f42bf8db903bbf75bbade (HTTP 500)<br>
<br>
And I debug more and compared with nova service-list, nova will give
response and will tell the conductor is down.<br>
<br>
and deeper I get this in magnum-api boot up:<br>
<i><br>
</i>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<i> # Enable object backporting via the conductor</i><i><br>
</i><i> base.MagnumObject.indirection_api =
base.MagnumObjectIndirectionAPI()</i><br>
<br>
so in magnum_service api code<br>
<br>
return objects.MagnumService.list(context, limit, marker,
sort_key,<br>
sort_dir)<br>
<br>
will require to use magnum-conductor to access DB, but no
magnum-conductor at all, then we get a 500 error.<br>
(nova-api doesn't specify <i>indirection_api so nova-api can access
DB</i>)<br>
<br>
My question is:<br>
<br>
1) is this by designed that we don't allow magnum-api to access DB
directly ?<br>
2) if 1) is by designed, then `magnum service-list` won't work, and
the error message should be improved such as "magnum service is down
, please check magnum conductor is alive"<br>
<br>
What do you think?<br>
<br>
P.S. I tested comment this line:<br>
<i># base.MagnumObject.indirection_api =
base.MagnumObjectIndirectionAPI()</i><br>
magnum-api will response but failed to create bay(), which means api
service have read access but can not write it at all since(all db
write happened in conductor layer).<br>
<br>
<pre class="moz-signature" cols="72">--
Best Regards, Eli(Li Yong)Qiao
Intel OTC China</pre>
</body>
</html>