.graphlab/config keeps getting corrupted in GLC 1.4

User 1375 | 5/28/2015, 7:17:12 PM

We have not been able to identify the pattern which leads to this error, but it is happening rather frequently. The product key entry inside .graphlab/config keeps mysteriously getting wiped-out during the run of a standalone python script, which then causes the following error during any subsequent runs:

ERROR] [graphlab.connect.main] License check failed: Unable to validate license. Contact support@dato.com. Traceback (most recent call last): File "trainer.py", line 386, in <module> main() File "trainer.py", line 324, in main init() File "/root/utils.py", line 99, in init gl_init() File "/root/utils.py", line 66, in gl_init gl.set_runtime_config('GRAPHLAB_FILEIO_MAXIMUM_CACHE_CAPACITY', conf.int('graphlab_fileio_maximum_cache_capacity_gb') * 1e9) File "/root/anaconda/envs/graphlab/lib/python2.7/site-packages/graphlab/util.py", line 499, in set_runtime_config unity = _glconnect.get_unity() File "/root/anaconda/envs/graphlab/lib/python2.7/site-packages/graphlab/connect/main.py", line 264, in get_unity assert is_connected(), ENGINE_START_ERROR_MESSAGE AssertionError: Cannot connect to GraphLab Create engine. Contact support@dato.com for help.

Once that happens, we have no choice but to copy the license file from another machine.


User 91 | 5/28/2015, 9:17:10 PM

Thanks for letting us know. This could be an issue. We will investigate and let you know soon.

User 4 | 5/28/2015, 9:20:34 PM

@msainz I will be happy to help try to resolve this issue, and I am grateful for any information you can provide that will help us debug. Can you provide a Python code sample that will reproduce the issue consistently?

You can also work around it by reinstalling the licensed GraphLab Create egg from dato.com (the pip install URL should contain get.dato.com); the install process will overwrite the existing (or provide new) productkey and licenseinfo in your config file.

User 1375 | 5/28/2015, 9:51:57 PM

thank you guys, as of now, we can't detect the pattern. It appears that we can non-deterministically produce the error just by import graphlab as gl; gl.SArray([1,2,3]) in an ipython session, quit the session, try again, repeat.

User 91 | 5/29/2015, 2:13:51 AM

We have a couple of questions from our side:

  • How many users are using the same installation of GLC at the same time? Is it more than one? Is this a one machine multiple users pattern?
  • What operating system are you using? Can we have a few more details about it ?

User 91 | 5/29/2015, 2:24:43 AM

Another possibility is that import graphlab as gl; gl.SArray([1,2,3]) was executed at the same time during which someone else was using the system.

Have you used an apply function on SArray/SFrame/SGraph where the function refers directly or indirectly to another SArray/SGraph/SFrame?

User 4 | 5/29/2015, 6:13:06 AM

Hi @msainz, we investigated and have tracked down the root cause of this issue. The permanent fix for this issue will be part of the next release of GraphLab Create.

In the meantime, to work around it, you can use an environment variable to set the product key:

export GRAPHLAB_PRODUCT_KEY=<your product key here>

As long as that environment variable is set you should not experience errors due to the product key missing from the config file. Sorry for the inconvenience, and I hope that helps!

User 91 | 6/16/2015, 6:32:21 PM

This issue should be fixed in Graphlab-Create 1.4.1.