reset status in getCache (PVDataHolder) following put with nowtaccess error
This commit is contained in:
@@ -1,16 +1,18 @@
|
||||
bitshuffle/bitshuffle.lo: bitshuffle/bitshuffle.c bitshuffle/bitshuffle.h \
|
||||
/usr/include/stdlib.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
bitshuffle/bitshuffle.lo: bitshuffle/bitshuffle.c \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle.h /usr/include/stdlib.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h bitshuffle/bitshuffle_core.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
bitshuffle/bitshuffle_internals.h bitshuffle/iochain.h \
|
||||
@@ -21,6 +23,8 @@ bitshuffle/bitshuffle.lo: bitshuffle/bitshuffle.c bitshuffle/bitshuffle.h \
|
||||
/usr/include/bits/stdio.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/string.h /usr/include/bits/string2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
@@ -47,12 +51,14 @@ bitshuffle/bitshuffle.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
@@ -69,6 +75,8 @@ bitshuffle/bitshuffle.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
bitshuffle/bitshuffle_core.lo: bitshuffle/bitshuffle_core.c \
|
||||
bitshuffle/bitshuffle_core.h \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
@@ -8,12 +8,13 @@ bitshuffle/bitshuffle_core.lo: bitshuffle/bitshuffle_core.c \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h bitshuffle/bitshuffle_internals.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_internals.h \
|
||||
bitshuffle/iochain.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h \
|
||||
@@ -25,6 +26,8 @@ bitshuffle/bitshuffle_core.lo: bitshuffle/bitshuffle_core.c \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mm_malloc.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
@@ -57,12 +60,14 @@ bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
@@ -79,6 +84,8 @@ bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_internals.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdlib.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdc-predef.h \
|
||||
/usr/include/stdlib.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/sys/types.h \
|
||||
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
|
||||
/usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/sigset.h /usr/include/bits/time.h \
|
||||
/usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
|
||||
/usr/include/alloca.h bitshuffle/iochain.h
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/iochain.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
@@ -36,12 +39,14 @@ bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdlib.h \
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
@@ -58,4 +63,6 @@ bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdlib.h \
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
@@ -650,6 +650,27 @@ int CAFE::getCache(const unsigned int handle, PVDataHolder & pvd)
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
|
||||
//Reset any possible put error that preceded call to getCache
|
||||
if ( (*it_handle).getStatus() == ECAFE_NOWTACCESS ||
|
||||
(*it_handle).getStatus() == ECA_PUTFAIL ||
|
||||
(*it_handle).getStatus() == ECA_PUTCBINPROG) {
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
}; //lock
|
||||
//std::cout << "getStatus - before:" << (*it_handle).getStatus() << std::endl;
|
||||
handle_index.modify(it_handle, change_status(ICAFE_NORMAL));
|
||||
pvd.status = ICAFE_NORMAL;
|
||||
//std::cout << "getStatus - after:" << (*it_handle).getStatus() << std::endl;
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}; //unlock
|
||||
}
|
||||
|
||||
|
||||
|
||||
//meant for use in callbacks in monitors!
|
||||
if ( (*it_handle).getChannelGetCacheWaitPolicy().getWaitKind() == CAFENUM::GET_CACHE_NO_CHECK)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user