diff --git a/producer/api/python/asapo_producer.pyx.in b/producer/api/python/asapo_producer.pyx.in
index 1a02131818ade7a0ff13908c9cc3a6dbbdbcbb5f..059a4c812fb26f684284f916dcab7e7c6df83be0 100644
--- a/producer/api/python/asapo_producer.pyx.in
+++ b/producer/api/python/asapo_producer.pyx.in
@@ -153,9 +153,6 @@ cdef class PyProducer:
         if err:
             throw_exception(err)
         if data is not None:
-          if data.base is not None:
-            Py_XINCREF(<PyObject*>data.base)
-          else:
             Py_XINCREF(<PyObject*>data)
         if callback != None:
             Py_XINCREF(<PyObject*>callback)
@@ -456,9 +453,6 @@ cdef class PyProducer:
     cdef void c_callback_ndarr(self,py_callback,nd_array,RequestCallbackPayload payload, Error err) with gil:
         self.c_callback_python(py_callback,nd_array,payload,err)
         if nd_array is not None:
-          if nd_array.base is not None:
-            Py_XDECREF(<PyObject*>nd_array.base)
-          else:
             Py_XDECREF(<PyObject*>nd_array)
 
     cdef void c_callback_bytesaddr(self,py_callback,bytes_array,RequestCallbackPayload payload, Error err) with gil:
diff --git a/tests/automatic/bug_fixes/python_segfault_dataview/check_linux.sh b/tests/automatic/bug_fixes/python_segfault_dataview/check_linux.sh
index 414b73f8e86ef8f9712c147e5f8fc6a5461cac35..409d69f55e9fcabf2928e4506a68d7a3bb80a02d 100644
--- a/tests/automatic/bug_fixes/python_segfault_dataview/check_linux.sh
+++ b/tests/automatic/bug_fixes/python_segfault_dataview/check_linux.sh
@@ -1,9 +1,29 @@
 #!/usr/bin/env bash
 set -e
 
+trap Cleanup EXIT
+
+Cleanup() {
+    echo cleanup
+    rm -rf ${receiver_root_folder}
+    echo "db.dropDatabase()" | mongo ${beamtime_id}_detector
+}
+
+
+
 export PYTHONPATH=$2:${PYTHONPATH}
 export Python3_EXECUTABLE=$3
 
-$Python3_EXECUTABLE $1 $endpoint $beamtime_id $token
+beamline=test
+receiver_root_folder=/tmp/asapo/receiver/files
+facility=test_facility
+year=2019
+beamtime_id=asapo_test
+receiver_folder=${receiver_root_folder}/${facility}/gpfs/${beamline}/${year}/data/${beamtime_id}
+endpoint=127.0.0.1:8400
+
+mkdir -p ${receiver_folder}
+echo ${receiver_folder}
+$Python3_EXECUTABLE $1 $endpoint $beamtime_id
 
 
diff --git a/tests/automatic/bug_fixes/python_segfault_dataview/producer_segfault.py b/tests/automatic/bug_fixes/python_segfault_dataview/producer_segfault.py
index 0a67ae5b2057b3c6e67da9978befade5402fbaf3..61ca56fae15873edc4fdd1e9748a3f4a4e502da2 100644
--- a/tests/automatic/bug_fixes/python_segfault_dataview/producer_segfault.py
+++ b/tests/automatic/bug_fixes/python_segfault_dataview/producer_segfault.py
@@ -3,6 +3,9 @@ from __future__ import print_function
 import asapo_producer
 import time
 import numpy as np
+import sys
+
+endpoint, beamtime = sys.argv[1:]
 
 def callback(payload, err):
     if isinstance(err, asapo_producer.AsapoServerWarning):
@@ -12,8 +15,8 @@ def callback(payload, err):
     else:
         print("successfuly sent: ", payload)
 
-producer = asapo_producer.create_producer("google.com:8700",'processed', "beamtime", 'auto', "data_source", "token", 4, 5000)
+producer = asapo_producer.create_producer(endpoint,'processed', beamtime, 'auto', "data_source", '', 4, 5000)
 data = np.random.random((100, 100))
 
 producer.send(1, exposed_path="processed/foo.dat", stream="foo", data=data.view(np.int8), callback=callback)
-
+producer.wait_requests_finished(5000)