<div dir="ltr"><div>Hi, folks!</div><div><br></div><div>I guess I found the reason of the problem. The first spec was created by Jay. At that moment I was just an implementer. In this spec we have a contradiction between lines #74 and #99. </div><div><a href="https://review.openstack.org/#/c/91444/16/specs/juno/tag-instances.rst">https://review.openstack.org/#/c/91444/16/specs/juno/tag-instances.rst</a></div><div><br></div><div>Line 74 says "A tag shall be defined as a Unicode bytestring no longer than 60 bytes in length."</div><div><br></div><div>Line 99 contains SQL instruction for migration "tag VARCHAR(80) NOT NULL CHARACTER SET utf8"</div><div><br></div><div>It seems to me that everybody missed this contradiction and I just copy the whole migration script with length 80.</div><div><br></div><div>So it's just an old mistake and I think we can change length of tag from 60 to 80.</div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-01-17 10:04 GMT+04:00 GHANSHYAM MANN <span dir="ltr"><<a href="mailto:ghanshyammann@gmail.com" target="_blank">ghanshyammann@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div class="h5"><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)"><span style="font-family:arial,sans-serif;color:rgb(34,34,34)">On Tue, Jan 17, 2017 at 2:37 PM, Alex Xu </span><span dir="ltr" style="font-family:arial,sans-serif;color:rgb(34,34,34)"><<a href="mailto:soulxu@gmail.com" target="_blank">soulxu@gmail.com</a>></span><span style="font-family:arial,sans-serif;color:rgb(34,34,34)"> wrote:</span><br></div></div></div><div class="gmail_extra"><div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2017-01-17 10:26 GMT+08:00 Matt Riedemann <span dir="ltr"><<a href="mailto:mriedem@linux.vnet.ibm.com" target="_blank">mriedem@linux.vnet.ibm.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="m_-7093364966405039669gmail-m_5191709970995579051HOEnZb"><div class="m_-7093364966405039669gmail-m_5191709970995579051h5">On 1/16/2017 7:12 PM, Zhenyu Zheng wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="m_-7093364966405039669gmail-m_5191709970995579051h5">
Hi Nova,<br>
<br>
I just discovered something interesting, the tag has a limited length,<br>
and in the current implementation, it is 60 in the tag object definition:<br>
<a href="http://git.openstack.org/cgit/openstack/nova/tree/nova/objects/tag.py#n18" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/nova/tree/nova/objec<wbr>ts/tag.py#n18</a><br>
<br>
but 80 in the db model:<br>
<a href="http://git.openstack.org/cgit/openstack/nova/tree/nova/db/sqlalchemy/models.py#n1464" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/<wbr>openstack/nova/tree/nova/db/sq<wbr>lalchemy/models.py#n1464</a><br>
<br>
As asked in the IRC and some of the cores responded(thanks to Matt and<br>
Jay), it seems to be an<br>
oversight and has no particular reason to do it this way.<br>
<br>
Since we have already created a 80 long space in DB and the current<br>
implementation might be confusing,  maybe we should expand the<br>
limitation in tag object definition to 80. Besides, users can enjoy<br>
longer tags.<br>
<br>
And the question could be, does anyone know why it is 60 in object but<br>
80 in DB model? is it an oversight or we have some particular reason?<br>
<br>
If we could expand it to be the same as DB model (80 for both), it is ok<br>
to do this tiny change without microversion?<br>
<br>
Thanks,<br>
<br>
Kevin Zheng<br>
<br>
<br></div></div>
______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
<br>
</blockquote>
<br>
As I said in IRC, the tags feature took a long time to land (several releases) so between the time that the spec was written and then the data model patch and finally the REST API change, we might have just totally missed that the length of the column in the DB was different than what was allowed in the REST API.<br>
<br>
I'm not aware of any technical reason why they are different. I'm hoping that Sergey Nikitin might remember something about this. But even looking at the spec:<br>
<br>
<a href="https://specs.openstack.org/openstack/nova-specs/specs/liberty/approved/tag-instances.html" rel="noreferrer" target="_blank">https://specs.openstack.org/op<wbr>enstack/nova-specs/specs/liber<wbr>ty/approved/tag-instances.html</a><br>
<br>
The column was meant to be 60 so my guess is someone noticed that in the REST API review but missed it in the data model review.<br></blockquote><div><br></div><div>I can't remember the detail also. Hoping Sergey can remember something also.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
As for needing a microversion of changing this, I tend to think we don't need a microversion because we're not restricting the schema in the REST API, we're just increasing it to match the length in the data model. But I'd like opinions from the API subteam about that.<span class="m_-7093364966405039669gmail-m_5191709970995579051HOEnZb"><font color="#888888"><br>
<br></font></span></blockquote><div><br></div><div>We still need microversion for the user to discover the max length between different cloud deployments.</div></div></div></div></blockquote><div><br></div></div></div><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)">​I agree that we still need microversion for this. As Alex mentioned, otherwise it will be issue on interoperability.</div><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)"><br></div><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)">Can we just keep it 60 and change DB to match the same?</div><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)"><br></div><div class="gmail_default" style="font-family:monospace,monospace;color:rgb(39,78,19)">-gmann</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class=""><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="m_-7093364966405039669gmail-HOEnZb"><font color="#888888"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="m_-7093364966405039669gmail-m_5191709970995579051HOEnZb"><font color="#888888">
-- <br>
<br>
Thanks,<br>
<br>
Matt Riedemann<br>
<br>
<br>
______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
</font></span></blockquote></font></span></div><br></div></div>
<br></span><span class="">______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
<br></span></blockquote></div><br></div></div>
<br>______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.<wbr>openstack.org?subject:<wbr>unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
<br></blockquote></div><br></div>