Browse Source

Merge remote-tracking branch 'origin/candidate-3.8.x' into candidate-3.10.x

Gavin Halliday 13 years ago
parent
commit
ff1f083332

+ 22 - 10
cmake_modules/FindBINUTILS.cmake

@@ -37,17 +37,29 @@ IF (NOT BINUTILS_FOUND)
   if (USE_NATIVE_LIBRARIES)
     FIND_PATH (BINUTILS_INCLUDE_DIR NAMES bfd.h)
     FIND_LIBRARY (BINUTILS_LIBRARIES NAMES bfd)
-    FIND_LIBRARY (IBERTY_LIBRARIES NAMES iberty_pic)
-    FIND_LIBRARY (IBERTY_LIBRARIES NAMES iberty)
+    if ( NOT APPLE )
+      FIND_LIBRARY (IBERTY_LIBRARIES NAMES iberty_pic)
+      FIND_LIBRARY (IBERTY_LIBRARIES NAMES iberty)
+    endif ( NOT APPLE )
   endif()
   include(FindPackageHandleStandardArgs)
-  find_package_handle_standard_args(BinUtils DEFAULT_MSG
-    BINUTILS_LIBRARIES
-    BINUTILS_INCLUDE_DIR
-    IBERTY_LIBRARIES
-  )
-  IF (BINUTILS_FOUND)
-    set (BINUTILS_LIBRARIES ${BINUTILS_LIBRARIES} ${IBERTY_LIBRARIES} )
-  ENDIF()
+  if ( NOT APPLE )
+    find_package_handle_standard_args(BinUtils DEFAULT_MSG
+      BINUTILS_LIBRARIES
+      BINUTILS_INCLUDE_DIR
+      IBERTY_LIBRARIES
+    )
+    IF (BINUTILS_FOUND)
+      set (BINUTILS_LIBRARIES ${BINUTILS_LIBRARIES} ${IBERTY_LIBRARIES} )
+    ENDIF()
+  else ( NOT APPLE )
+    find_package_handle_standard_args(BinUtils DEFAULT_MSG
+      BINUTILS_LIBRARIES
+      BINUTILS_INCLUDE_DIR
+    )
+    IF (BINUTILS_FOUND)
+      set (BINUTILS_LIBRARIES ${BINUTILS_LIBRARIES} )
+    ENDIF()
+  endif ( NOT APPLE )
   MARK_AS_ADVANCED(BINUTILS_INCLUDE_DIR BINUTILS_LIBRARIES)
 ENDIF()

+ 9 - 2
docs/HPCCClientTools/CT_Mods/CT_Comm_Line_DFU.xml

@@ -217,6 +217,13 @@
                   <entry>Specify a jobname for the DFU operation's
                   workunit.</entry>
                 </row>
+
+                <row>
+                  <entry>transferbuffersize=nnn</entry>
+
+                  <entry>Optional. Overrides the DFU Server's buffer size
+                  value (default is 64k)</entry>
+                </row>
               </tbody>
             </tgroup>
           </informaltable>
@@ -356,8 +363,8 @@ replicate=1</programlisting>
                     <entry><emphasis>format</emphasis></entry>
 
                     <entry>Optional. One of the following values: <emphasis
-                    role="bold">fixed csv xml</emphasis> If omitted, the
-                    default is fixed.</entry>
+                    role="bold">fixed csv xml recfmv recfmb</emphasis> If
+                    omitted, the default is fixed.</entry>
                   </row>
 
                   <row>

File diff suppressed because it is too large
+ 0 - 1261
docs/HPCCClientTools/CT_Mods/CT_Comm_Line_Roxie.xml


+ 4 - 0
ecl/hqlcpp/hqlres.cpp

@@ -415,7 +415,11 @@ void ResourceManager::flush(const char *filename, bool flushText, bool target64b
         bfd_init ();
         bfd_set_default_target(target64bit ? "x86_64-unknown-linux-gnu" : "x86_32-unknown-linux-gnu");
         const bfd_arch_info_type *temp_arch_info = bfd_scan_arch ("i386");
+#if defined __APPLE__
+        file = bfd_openw(filename, NULL);//MORE: Quick fix to get working on OSX
+#else
         file = bfd_openw(filename, target64bit ? "elf64-x86-64" : NULL);//MORE: Test on 64 bit to see if we can always pass NULL
+#endif
         verifyex(file);
         verifyex(bfd_set_arch_mach(file, temp_arch_info->arch, temp_arch_info->mach));
         verifyex(bfd_set_start_address(file, 0));

+ 5 - 0
system/include/platform.h

@@ -411,8 +411,13 @@ typedef int socklen_t;
 // #define  inline
 
 #define SharedObjectPrefix          "lib"
+#if defined (__APPLE__)
+#define SharedObjectExtension       ".dylib"
+#define LibraryExtension            ".dylib"
+#else
 #define SharedObjectExtension       ".so"
 #define LibraryExtension            ".so"
+#endif
 #define ProcessExtension            ""
 #define GetSharedProcedure(h,name)  dlsym(h,(char *)name)
 #define LoadSucceeded(h)            (h != NULL)

+ 2 - 1
system/jhtree/ctfile.cpp

@@ -356,7 +356,8 @@ bool CWriteNode::add(offset_t pos, const void *indata, size32_t insize, unsigned
         hdr.keyBytes += bytes;
     }
 
-    assertex(insize<=keyLen);
+    if (insize>keyLen)
+        throw MakeStringException(0, "key+payload exceeds max length");
     memcpy(lastKeyValue, indata, insize);
     lastSequence = sequence;
     hdr.numKeys++;

+ 1 - 1
system/jhtree/ctfile.hpp

@@ -39,7 +39,7 @@
 #define HTREE_COMPRESSED_KEY 0x40
 #define HTREE_QUICK_COMPRESSED_KEY 0x48
 #define KEYBUILD_VERSION 1 // unsigned short. NB: This should upped if a change would make existing keys incompatible with current build.
-
+#define KEYBUILD_MAXLENGTH 0x7FFF
 
 // structure to be read into - NO VIRTUALS.
 // This header layout corresponds to FairCom cTree layout for compatibility with old systems ...

+ 3 - 2
thorlcr/activities/indexwrite/thindexwrite.cpp

@@ -23,6 +23,7 @@
 #include "dadfs.hpp"
 #include "dautils.hpp"
 
+#include "ctfile.hpp"
 #include "eclrtl.hpp"
 #include "thorfile.hpp"
 
@@ -61,8 +62,8 @@ public:
         dlfn.set(helper->getFileName());
         isLocal = 0 != (TIWlocal & helper->getFlags());
         unsigned maxSize = helper->queryDiskRecordSize()->getMinRecordSize();
-        if (maxSize >= 0x8000)
-            throw MakeActivityException(this, 0, "Index minimum record length (%d) exceeds 32767 internal limit", maxSize);
+        if (maxSize > KEYBUILD_MAXLENGTH)
+            throw MakeActivityException(this, 0, "Index minimum record length (%d) exceeds %d internal limit", maxSize, KEYBUILD_MAXLENGTH);
 
         singlePartKey = 0 != (helper->getFlags() & TIWsmall) || dlfn.isExternal();
         clusters.kill();

+ 1 - 1
thorlcr/activities/indexwrite/thindexwriteslave.cpp

@@ -167,7 +167,7 @@ public:
             }
         }
         assertex(!(helper->queryDiskRecordSize()->getMetaFlags() & MDFneedserialize));
-        maxDiskRecordSize = helper->queryDiskRecordSize()->isVariableSize() ? 4096 : helper->queryDiskRecordSize()->getFixedSize();
+        maxDiskRecordSize = helper->queryDiskRecordSize()->isVariableSize() ? KEYBUILD_MAXLENGTH : helper->queryDiskRecordSize()->getFixedSize();
         reportOverflow = false;
     }