It turns out that the latest issue is due to that I didn't restart cinder-volume service after disabling "glance_api_version=2". After restarting cinder-volume service, the upload-to-image is working.
In summary, the issue lies in that the confliction when setting "glance_api_version=2" in cinder.conf in order to get benefit of copy-on-write cloning for cinder volume creation. But Glance API v2 has not implement "create" function which leads to the failure of upload-to-image function.
This issue will force people to pick one of the two features unless they are resorting to some complex multi cinder configuration setup.
It turns out that the latest issue is due to that I didn't restart cinder-volume service after disabling "glance_ api_version= 2". After restarting cinder-volume service, the upload-to-image is working.
In summary, the issue lies in that the confliction when setting "glance_ api_version= 2" in cinder.conf in order to get benefit of copy-on-write cloning for cinder volume creation. But Glance API v2 has not implement "create" function which leads to the failure of upload-to-image function.
This issue will force people to pick one of the two features unless they are resorting to some complex multi cinder configuration setup.