Changeset: 172c82b2344f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/172c82b2344f
Modified Files:
CMakeLists.txt
gdk/gdk_atoms.c
gdk/gdk_bbp.c
Branch: default
Log Message:
Merge with Jul2021 branch.
diffs (75 lines):
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -92,10 +92,14 @@ monetdb_configure_misc()
# Some custom target will need these setting.
include(monetdb-custom-targets)
-SET(CMAKE_SKIP_BUILD_RPATH FALSE)
-SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
-SET(CMAKE_INSTALL_RPATH
"${CMAKE_INSTALL_FULL_LIBDIR};${CMAKE_INSTALL_FULL_LIBDIR}/monetdb5")
-SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+if(NOT ${CMAKE_INSTALL_PREFIX} STREQUAL "/usr")
+ SET(CMAKE_SKIP_BUILD_RPATH FALSE)
+ SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
+ SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
+ SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+#else()
+# SET(CMAKE_SKIP_RPATH TRUE)
+endif()
# required for some instalation files
set(PROGRAM_PERMISSIONS_DEFAULT
diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c
--- a/gdk/gdk_atoms.c
+++ b/gdk/gdk_atoms.c
@@ -1697,6 +1697,7 @@ str
ATOMunknown_name(int i)
{
assert(i < 0);
+ assert(-i < MAXATOMS);
assert(unknown[-i]);
return unknown[-i];
}
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -3216,7 +3216,18 @@ BBPquickdesc(bat bid)
}
if ((b = BBP_cache(bid)) != NULL)
return b; /* already cached */
- return BBP_desc(bid);
+ b = BBP_desc(bid);
+ if (b && b->ttype < 0) {
+ const char *aname = ATOMunknown_name(b->ttype);
+ int tt = ATOMindex(aname);
+ if (tt < 0) {
+ TRC_WARNING(GDK, "atom '%s' unknown in bat '%s'.\n",
+ aname, BBP_physical(bid));
+ } else {
+ b->ttype = tt;
+ }
+ }
+ return b;
}
/*
diff --git a/sql/storage/bat/bat_utils.c b/sql/storage/bat/bat_utils.c
--- a/sql/storage/bat/bat_utils.c
+++ b/sql/storage/bat/bat_utils.c
@@ -85,15 +85,6 @@ temp_copy(log_bid b, bool renew, bool te
} else {
if (!(o = quick_descriptor(b)))
return BID_NIL;
- if (o->ttype < 0) {
- /* bat was never loaded and it's type is not yet filled
in */
- if ((o = BATdescriptor(b)) == NULL)
- return BID_NIL;
- assert(o->ttype >= 0);
- BBPunfix(o->batCacheid);
- o = quick_descriptor(b);
- assert(o != NULL);
- }
if (!(c = bat_new(o->ttype, COLSIZE, PERSISTENT)))
return BID_NIL;
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list