Neo4j 3.0.6 - TRIM Cypher Query on Windows and Linux - neo4j

My PC using Microsoft Windows [Version 6.1.7601] but my server using Linux 4.4.11-23.53.amzn1.x86_64 #1 SMP Wed Jun 1 22:22:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
I am using same query at my neo4j server
MATCH (n:Lah)
WHERE n.name = TRIM(' new LAH ')
RETURN n LIMIT 25
This is what I got from running on server using OS Linux :
And this is what I got from running on my PC, using OS Windows :
The question is, Why I got different result when I have same Query? Because I have Java Project that I develop from Windows and I build it on Linux Server.
What I need to do to make my query work?
UPDATE
After check on my co-worker PC, he has same OS with me, and running same Query, the result somehow is empty too. Any idea what is the problem and how to fix this?

Related

Neo4j db slow running it on Mac M1 with neo4j desktop

I downloaded the neo4j desktop to my Mac M1, I notice that the same import which takes a few minutes on an Ubuntu 20.04 machine (same running a neo4j db in desktop setup) is extremely slow. (48 hours for the same query)
After talking to some neo4j folks on the conference:
https://mkyong.com/java/how-to-install-java-on-mac-osx/
you need to:
brew install java
sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
I already had a neo4j desktop on my machine so to make it work I reinstalled the neo4j desktop and created a new db, now the import flies.
(And you probably do not need to reinstall just create a new db)

Python Numba Jit only uses one core in Ubuntu Docker Container on Windows Server 2019

I try to utilize all 8 cores with the following jited function that is supposed to return a Jaccard Distance Matrix:
#jit(nopython=True, parallel=True)
def compute_jaccard(session1, session2, arr, lengths):
"""Jited funciton to calculate jaccard distance
"""
session1, session2 = session1[0], session2[0]
intersection, union = 0, 0
if(lengths[session2] > lengths[session1]):
session1, session2 = session2, session1
marked = np.zeros((lengths[session2],))
for x in arr[session1][:lengths[session1]]:
x_in_2 = arr[session2][:lengths[session2]] == x
marked[x_in_2] = 1
if(np.any(x_in_2)):
intersection+=1
union+=1
else:
union+=1
union+=np.sum(marked==0)
## Use 1 - to get distances and not similarity
jaccard = 1 - intersection/union
return jaccard
When I run this code with Ubuntu on my physical machine, all cores are utilized which is why it shouldn't be a numba or code problem. However, I run a Ubuntu Docker Image using Hyper-V on Windows Server 2019 and the code only uses one CPU in this setting.
Additional Information:
I run the Code using PyCharm on Windows and the Docker Plugin as Project Interpreter
I tried to activate WLS2 but so far was not successful so I rely on Hyper-V
The Python function multiprocessing.cpu_count() returns 8 cores
Docker Desktop under stats shows that >700% of the CPU is used which is obviously weird but the Windows Resource Monitor shows that only one core is used
I tried the following things already:
I activated Nested Virtualization
I pass --cpuset-cpus 7 as Docker Parameter in PyCharm
I tried the following Linux Images: Arch Linux, Ubuntu 20.04 and Ubuntu 20.10
What am I missing? Guesses where the problem lies (Windows Server 2019, Docker, Pycharm, Ubuntu (configuration) or Python code) would already help a lot..

Running Linux Docker Containers on Windows Server 2019

I am exploring docker for one of my company project. In this project I need to run the MemCached on CentOS and I prefer to run this in a docker container. I have successfully able to run this on Windows 10 machine with Docker Community Edition installed. But our project needs Windows Server 2019 in production and I want to run the container of same image (MemCached on CentOS) on windows server 2019. I googled a lot and found a link for running Linux Containers on Windows Server 2019. But as per the above link we are installing docker package in Preview version. I believe that this Preview version I should not use in Production. Is my understanding is correct or not?
Also is there any other stable released way to run Linux containers on Windows Server 2019.
Thanks in advance.
As per the Preview version you can remove the -RequiredVersion preview tag and then install. The process will install Docker Enterprise Edition on Server 2019 and not the CE version as the one for WIN 10.
If the container you want to run is a Linux container then you may face some tough times reason being
The containers(linux) runs on Server 2019 using LCOW way and the LCOW way is an experimental feature.
You said that you want to run container in Production environment and I would say not to use and experimental feature for Production.
Incase you need to run the containers on a server edition of Windows ie Server 2016 or Server 2019 you can go with the Docker CE (ie the same .exe that works on Win 10).
One important point to note is that on server 2016 all the docker versions are not supported.
Docker 2.0.0.31259 is the supported version of Docker on Server 2016.(Latest Docker 2.1.0.3 does not work on server 2016 but it works on Server 2019
Note : I face the same issues as you face ie you want the run the containers on Server 2019. The above are my findings so far. There is no clarity from windows side about how to run docker containers. Please refer to my answer :Here for better understanding
I'm struggling with the same issue for some time, and for me the only working combination of Windows Server and Docker that can effectively run with Linux containers is Windows Server 2019 Standard Edition with an edge release Docker Desktop Community 2.1.3.0 published on 2019-09-16.
The link to read about edge releases and to download them is:
https://docs.docker.com/docker-for-windows/edge-release-notes/
In my case, there was also an issue of nested virtualization, since my Windows Server is installed on VMware machine, and Docker requires Hyper-V inside Windows Server in order to work.
Fixed that issue according to instructions provided here:
https://doitfixit.com/blog/2014/03/06/qhyper-v-components-is-not-runningq-nested-in-vmware-workstation/
as far as my understanding goes, it is experimental feature, however it can be done and works quite OK.
The only requirement is that this feature works on server with hypervisor enabled.
Follow this link: https://www.altaro.com/msp-dojo/linux-containers-windows-server-2019/ for further instructions on how to set it up.

Docker CE and Windows Server compatibility?

Taken from https://docs.docker.com/docker-for-windows/install/:
System Requirements:
Windows 10 64bit: Pro, Enterprise or Education (Build 15063 or later).
Virtualization is enabled in BIOS. Typically, virtualization is enabled by default. This is different from having Hyper-V enabled. For
more detail see Virtualization must be
enabled
in Troubleshooting.
CPU SLAT-capable feature.
At least 4GB of RAM.
As you see, it doesn't state which Windows Server versions are compatible. Does anyone know?
States here https://success.docker.com/article/compatibility-matrix however it does not state the CE edition.
This link tells you all windows server versions.
And from this, all microsoft documentation about windows container focus on Windows Server 2019 and Windows Server 2016.
And docker project starts from the year 2013, so the latest old version Windows Server 2012 (Not include 2016, 2019) I guess not support docker as kernel need to support that.

Docker for Windows Server 2012 R2

I am unable to find a compatible docker version which supports Windows 2012 R2. Upon some research, I found out that Windows 2012 does not support docker.
How can I run docker in a Windows 2012 R2 server? Any help would be appreciated.
Only option available for you would be to setup a virtual machine inside Windows Server 2012 and run a Docker Supported OS on it.

Resources