Yes, 2.8 did not create that attribute.
3.0.x (until including 3.0.1) seems to require this attribute to be set for
system collections however, that's why the restore does not work for system
collections.
I fixed that for 3.0.2 so that it will work with and without the attribute
being set. Additionally, 3.0.2 will also dump the "isSystem" attribute when
dumping. So 3.0.2 should fix all these problems.
The workaround for 3.0.0 and 3.0.1 remains the same: to restore a system
collection the "isSystem" attribute needs to be added manually.
Sorry for the trouble
Jan
Am Mittwoch, 6. Juli 2016 11:27:12 UTC+2 schrieb Christoph Engel:
>
> Hello Jan,
>
> yes, you are right. There is no "isSystem" attribute set in the files. But
> the backup wasn't created by v3.0.1. It is a v2.8 backup. So the attribute
> isn't set by v2.8.
>
> Best regards
> Christoph
>
> Am Mittwoch, 6. Juli 2016 09:46:47 UTC+2 schrieb Jan:
>>
>> The restore process reads the backup created by arangodump and sends the
>> collection data back to the server.
>> Creating collections with names that start with an underscore (such as
>> "_aqlfunctions") is normally disallowed, except when the "isSystem"
>> attribute is set in addition).
>> It seems that in 3.0 the attribute "isSystem" is not dumped by arangodump
>> when creating the backup. That's why the server rejects creating the
>> collection.
>> I fixed this in commit 00985a7cb188fd08ca63b2276026be90677ad149. The fix
>> will be included in 3.0.2.
>>
>> A temporary workaround until 3.0.2 is to edit the structure JSON files
>> produced by arangodump and add the "isSystem" attribute manually for
>> collections whose names start with an underscore.
>>
>> For example, I have got the file
>> _aqlfunctions_8293af7a2caabc3098bc21db7ce2759d.structure.json with the
>> following content:
>>
>>
>> {"indexes":[],"parameters":{"cid":"19492516","count":0,"deleted":false,"doCompact":true,"indexBuckets":8,"isVolatile":false,"maximalSize":1048576,"name":"_aqlfunctions","type":2,"version":5,"waitForSync":false}}
>>
>> changing it to the following should make the restore happy:
>>
>>
>> {"indexes":[],"parameters":{"cid":"19492516","count":0,"deleted":false,"doCompact":true,"indexBuckets":8,"isVolatile":false,"maximalSize":1048576,"name":"_aqlfunctions","type":2,"version":5,"waitForSync":false,"isSystem":true}}
>>
>> Best regards
>> Jan
>>
>> Am Dienstag, 5. Juli 2016 14:46:56 UTC+2 schrieb Christoph Engel:
>>>
>>> Hi,
>>>
>>> I have installed Arangodb 3.0.1 and I would like to restore my backup
>>> form Arangodb 2.8 including the system collections with custom AQL
>>> functions.
>>> But from arangorestore I get the following response:
>>>
>>> Server version: 3.0.1
>>> # Connected to ArangoDB 'http+tcp://127.0.0.1:8529'
>>> # Re-creating document collection '_aqlfunctions'...
>>> 2016-07-05T12:29:10Z [72379] ERROR got error from server: HTTP 500 (
>>> Internal Server Error): ArangoError 1208: illegal name
>>> Processed 0 collection(s), read 0 byte(s) from datafiles, sent 0 batch(
>>> es)
>>>
>>> Without the param "--include-system-collections true" arangorestore
>>> seems to work fine.
>>> Is there a way to restore the system collections (especially the custom
>>> AQL functions) in Arangodb 3?
>>>
>>> Regards,
>>> Christoph
>>>
>>
--
You received this message because you are subscribed to the Google Groups
"ArangoDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.