{"action":"created","issue":{"url":"https://api.github.com/repos/thinkaurelius/titan/issues/918","labels_url":"https://api.github.com/repos/thinkaurelius/titan/issues/918/labels{/name}","comments_url":"https://api.github.com/repos/thinkaurelius/titan/issues/918/comments","events_url":"https://api.github.com/repos/thinkaurelius/titan/issues/918/events","html_url":"https://github.com/thinkaurelius/titan/issues/918","id":53834166,"number":918,"title":"Duplicate properties after singleProperty call in Titan 0.9","user":{"login":"smalyshev","id":155000,"avatar_url":"https://avatars.githubusercontent.com/u/155000?v=3","gravatar_id":"","url":"https://api.github.com/users/smalyshev","html_url":"https://github.com/smalyshev","followers_url":"https://api.github.com/users/smalyshev/followers","following_url":"https://api.github.com/users/smalyshev/following{/other_user}","gists_url":"https://api.github.com/users/smalyshev/gists{/gist_id}","starred_url":"https://api.github.com/users/smalyshev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smalyshev/subscriptions","organizations_url":"https://api.github.com/users/smalyshev/orgs","repos_url":"https://api.github.com/users/smalyshev/repos","events_url":"https://api.github.com/users/smalyshev/events{/privacy}","received_events_url":"https://api.github.com/users/smalyshev/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/thinkaurelius/titan/labels/bug","name":"bug","color":"fc2929"}],"state":"closed","locked":false,"assignee":{"login":"mbroecheler","id":758061,"avatar_url":"https://avatars.githubusercontent.com/u/758061?v=3","gravatar_id":"","url":"https://api.github.com/users/mbroecheler","html_url":"https://github.com/mbroecheler","followers_url":"https://api.github.com/users/mbroecheler/followers","following_url":"https://api.github.com/users/mbroecheler/following{/other_user}","gists_url":"https://api.github.com/users/mbroecheler/gists{/gist_id}","starred_url":"https://api.github.com/users/mbroecheler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbroecheler/subscriptions","organizations_url":"https://api.github.com/users/mbroecheler/orgs","repos_url":"https://api.github.com/users/mbroecheler/repos","events_url":"https://api.github.com/users/mbroecheler/events{/privacy}","received_events_url":"https://api.github.com/users/mbroecheler/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/thinkaurelius/titan/milestones/15","html_url":"https://github.com/thinkaurelius/titan/milestones/Titan0.9","labels_url":"https://api.github.com/repos/thinkaurelius/titan/milestones/15/labels","id":804803,"number":15,"title":"Titan0.9","description":"","creator":{"login":"mbroecheler","id":758061,"avatar_url":"https://avatars.githubusercontent.com/u/758061?v=3","gravatar_id":"","url":"https://api.github.com/users/mbroecheler","html_url":"https://github.com/mbroecheler","followers_url":"https://api.github.com/users/mbroecheler/followers","following_url":"https://api.github.com/users/mbroecheler/following{/other_user}","gists_url":"https://api.github.com/users/mbroecheler/gists{/gist_id}","starred_url":"https://api.github.com/users/mbroecheler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbroecheler/subscriptions","organizations_url":"https://api.github.com/users/mbroecheler/orgs","repos_url":"https://api.github.com/users/mbroecheler/repos","events_url":"https://api.github.com/users/mbroecheler/events{/privacy}","received_events_url":"https://api.github.com/users/mbroecheler/received_events","type":"User","site_admin":false},"open_issues":17,"closed_issues":40,"state":"open","created_at":"2014-09-26T21:36:20Z","updated_at":"2015-04-14T22:55:15Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-01-09T05:05:38Z","updated_at":"2015-04-14T22:55:15Z","closed_at":"2015-04-14T22:55:15Z","body":"I create a vertex with this code:\r\n```\r\ngremlin> v = g.addVertex('wikibaseId', 'Q1')\r\n==>v[66560768]\r\ngremlin> v.singleProperty('contentHash', 'test')\r\n==>vp[contentHash->test]\r\ngremlin> g.tx().commit()\r\n```\r\n\r\nThen I do this:\r\n```\r\ngremlin> v = g.V().has('wikibaseId', 'Q1').next()\r\n==>v[66560768]\r\ngremlin> v.singleProperty('contentHash', 'test2')\r\n==>vp[contentHash->test2]\r\ngremlin> v = g.V().has('wikibaseId', 'Q1').next()\r\n==>v[66560768]\r\ngremlin> v.singleProperty('contentHash', 'test2')\r\n==>vp[contentHash->test2]\r\ngremlin> v = g.V().has('wikibaseId', 'Q1').next()\r\n==>v[66560768]\r\ngremlin> v.singleProperty('contentHash', 'test3')\r\n==>vp[contentHash->test3]\r\ngremlin> v.properties('contentHash')\r\n==>vp[contentHash->test3]\r\n==>vp[contentHash->test]\r\n```\r\nAs you can see, I have now two properties named contentHash - even though I specifically asked to make it a single property. It also leads to this unpleasant effect:\r\n```\r\ngremlin> v.property('contentHash')\r\nMultiple properties exist for the provided key, use Vertex.properties(contentHash)\r\nDisplay stack trace? [yN] \r\n```\r\nI.e. despite me always using ``singleProperty``, I can not use ``property()`` reliably. The duplicates disappear after the commit, but committing after each property change would be very expensive. \r\n\r\nBoth ``wikibaseId`` and ``contentHash`` are declared as String keys with default (i.e. ``SINGLE``, as the docs say) cardinality:\r\n\r\n```\r\nmgmt.makePropertyKey('contentHash').dataType(String.class).make()\r\nmgmt.makePropertyKey('wikibaseId').dataType(String.class).make()\r\n```\r\n\r\nso they aren't even supposed to be able to hold many values. Yet that's what happens. "},"comment":{"url":"https://api.github.com/repos/thinkaurelius/titan/issues/comments/93103463","html_url":"https://github.com/thinkaurelius/titan/issues/918#issuecomment-93103463","issue_url":"https://api.github.com/repos/thinkaurelius/titan/issues/918","id":93103463,"user":{"login":"mbroecheler","id":758061,"avatar_url":"https://avatars.githubusercontent.com/u/758061?v=3","gravatar_id":"","url":"https://api.github.com/users/mbroecheler","html_url":"https://github.com/mbroecheler","followers_url":"https://api.github.com/users/mbroecheler/followers","following_url":"https://api.github.com/users/mbroecheler/following{/other_user}","gists_url":"https://api.github.com/users/mbroecheler/gists{/gist_id}","starred_url":"https://api.github.com/users/mbroecheler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbroecheler/subscriptions","organizations_url":"https://api.github.com/users/mbroecheler/orgs","repos_url":"https://api.github.com/users/mbroecheler/repos","events_url":"https://api.github.com/users/mbroecheler/events{/privacy}","received_events_url":"https://api.github.com/users/mbroecheler/received_events","type":"User","site_admin":false},"created_at":"2015-04-14T22:55:15Z","updated_at":"2015-04-14T22:55:15Z","body":"This is fixed with upgrade to TP3 M8 on current titan09 branch."}}