Float values leading dgraph live loader to go into a looped parsing failure

We wanted to load a data into dgraph cloud using dgraph live loader.
While uploading it was unable to parse float values (like 99.0, 114.0) and also triple that contained ^^xsd:integer .
When I removed the float value it was able to load the data into dgraph.
This was giving me warning and also it was going into an infinite loop:
_:4a85bf0d4e76423514529764efcad17e <end_index> “116.0” .
but this syntax is fine:
_:4a85bf0d4e76423514529764efcad17e <start_index> “111” .

The error is generated when the predicate is already defined in Dgraph as an int.
Could you verify your DQL schema, you should find “end_index” predicate. Make sure the type is float.
When doing the mutation without the predicate declared in the schema, Dgraph is creating it as “default” type. You can force the type using <_:somenode> <start_index> "111"^^<xs:int> .
Note the syntax <xs:int> (Dgraph types schema - DQL)
I see the fact that live loader is looping ( probably retrying the failed mutation). We will check this part. We may have and error handling condition to improve here.
Let me know if you managed to load your float values.


1 Like

RDF types supported are at RDF - DQL
You probably want to use ^^<xs:float> in your case.

1 Like

I have created an issue [BUG]: dgraph live loops on error when loading a float RDF to a int predicate · Issue #8881 · dgraph-io/dgraph · GitHub
for the fact that dgraph live is looping on the error.
The issue is on the error handling, you should be able to load you data correctly if you create the right DQL schema.

Feel free to create issues reports on Git Hub when necessary.

Thanks a lot Raphael. Also I will try that and get back to you thanks for opening the issue.