Error during mapdql data query


#1

Hello,

I’m trying to configure MapD Core in Docker. I followed instructions in Community Edition Download Section for Docker. Everything worked fine until first test of sample query basing by sample data about flights.

I downloaded 10K sample flight data and tried this query: SELECT origin_city AS “Origin”, dest_city AS “Destination”, AVG(airtime) AS “Average Airtime” FROM flights_2008_10k WHEREdistance < 175 GROUP BY origin_city, dest_city; from mapdql bash.

Unfortanely I got following error:
Thrift error: No more data to read.
Thrift connection errorr: No more data to read.

After this occured I got kicked out from docker bash and also mu container dissapeared. I would be very thankful for any help in this matter.

Best regards.


#2

@korkoran I haven’t tried it in mapdql in a Docker container, but I tested your query in Immerse (after assuming the lack of a space between WHERE and distance is simply a typo,) and Immerse isn’t fond of the double-quotes, or even the single-quotes. So can you please try:

SELECT origin_city AS Origin, dest_city AS Destination, AVG(airtime) AS AverageAirtime FROM flights_2008_10k WHERE distance < 175 GROUP BY origin_city, dest_city;

and let me know how that works? I ran this query against both the 10k and 7M datasets with no problems. If that’s not the issue, we’ll work on the next possibility. If that is the issue, I’ll raise a bug about more graceful error-handling.


#3

@easy Thank You for this suggestion but unfotunatelly I’m getting same error after using query without any quotes.


#4

OK, before I make any more suggestions… are you able to get any queries to run against that dataset?


#5

@easy Very good question - I should’ve mentioned it before. No - I’m not able to get any, even very simple, queries to work.


#6

Oh, well… that’s interesting! Maybe there’s a problem with the installation. Are you able to view data in Immerse? Can you try hitting another dataset?

One very basic test is to stop and restart the server and see if that solves the problem.


#7

@easy I’m able to run Immerse but when I’m trying to view data I’m getting kicked from Docker bash (also with container deleted) without any error. I’m getting same effect when I’m trying to add data bym Immerse - kick form Docker as soon as I try to explore data. Same situation with other datasets.

I tried to reset docker multiple times. I’m not sure hot to restart mapd server inside Docker (there is no systemctl command on Docker).


#8

Hi @korkoran,

It sounds like we’re hitting a fatal error when trying to execute the query. This typically happens when you have an older, unsupported NVIDIA driver.

  • Are you using the CPU-only (mapd/mapd-ce-cpu) or the GPU-/CUDA-enabled version of Community Edition (mapd/mapd-ce-cuda)?
  • What command are you using to start the container?
  • What Linux distro and what version of Docker are you using?
  • If using the GPU version, what model of GPU do you have, and what driver version do you have installed? The output of nvidia-smi will be enough.
  • Is anything else using the GPU which might be using large amounts of memory?
  • What version of nvidia-docker are you using?

Correct, there is no systemd inside the container because the container itself is the service, managed by Docker/k8s/Mesos/etc. This is also why the container dies when the service dies.

After starting the container, you can watch the container logs using:

docker logs -f {container id}

(where {container id} is the container ID.

Additionally, the mapd_server logs are located inside the container at /mapd-storage/data/mapd_log. You typically bind mount in this directory from outside the container using -v /home/username/mapd-storage:/mapd-storage. Those logs should also be able to tell us why mapd_server is crashing.


#9

Hello @andrew,

  1. I’m using GPU-/CUDA-enabled version
  2. sudo nvidia-docker run -d -v $HOME/mapd-docker-storage:/mapd-storage -p 9090-9092:9090-9092 -v /usr/share/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d mapd/mapd-ce-cuda
  3. I’m using Ubuntu 16.04 and Docker 18.06.1-ce
  4. Output of nvidia-smi (used inside Docker container):
  5. I don’t think so - it’s fresh install of Ubuntu specially for mapD server
  6. I’m using nvidia-docker 2.0.3

I checked logs and I think it have to be something with GPU drivers or software.

This shows in logs when error occurs:

> F1103 08:16:40.165875 10592 NvidiaKernel.cpp:80] Check failed: cuLinkAddData_v2(link_state, CU_JIT_INPUT_PTX, static_cast<void*>(const_cast<char*>(ptx.c_str())), ptx.length() + 1, 0, num_options, &option_keys[0], &option_values[0]) == CUDA_SUCCESS (218 vs. 0) 
> *** Check failure stack trace: ***
> /mapd/startmapd: line 1: kill: (-9) - No such process

#10

You are using a Fermi chip and that architecture isn’t supported. I bet this is the reason for mapd crashes.

You need a Kepler or newer Gpu to use mapd (possibly not a maxwell).

BTW you can try the Cpu version of the product; you will be pleased of the performance even without a GPU


#11

@aznable Oh, had no idea about it. This was just a test enviroment - I have Kepler GPU on real server - just wanted to test mapD before implementation. Thank You very much for this information.


#12

You could try to change the shader model in the code and recompile the open source version of mapd-core, but I don’t know if it would works and I doubt is worth the effort.


#13

@korkoran if testing against the CPU version isn’t enough, may I recommend a free trial of OmniSci Cloud?