Compiling SciDB 12.10 on OSX Mountain Lion


#1

Gang:

I’ve gotten SciDB 12.10 to build and run on OSX Mountain Lion, now I’m troubleshooting a couple of problems:

  • The iquery client crashes in getCommandLineOptions(), which relies on having a /proc filesystem. I’ve got a hard-coded work around in the short-term; in the long-term this functionality seems like suboptimal design - seems like any options should be passed to the library explicitly by the application, instead of the library relying on parsing the command-line itself.

  • The scidb server crashes when executing simple queries, whether AQL or AFL, e.g. “select * from list(‘arrays’);” … I’ve posted a backtrace below from the dying process. Any thoughts?

  • The code with modifications is at https://github.com/tshead/scidb-osx-12.10-mountain-lion

Cheers,
Tim

code bt
#0 0x00007fff8b094b3b in std::string::assign ()
#1 0x000000010739101f in scidb::Expression::ArgProp::operator= (this=0x7f9d3847f670, val=@0x7f9d3847f910) at Expression.h:276
#2 0x0000000107388ace in scidb::Expression::internalCompile (this=0x7f9d3847e810, expr=@0x10ba01398, query=@0x10ba015a0, tile=false, resultIndex=0, skipIndex=0, skipValue=false) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/Expression.cpp:555
#3 0x00000001073873fc in scidb::Expression::compile (this=0x7f9d3847e810, expr=@0x10ba01590, query=@0x10ba015a0, tile=false, expectedType=@0x10ba01588, inputSchemas=@0x10ba01570, outputSchema=@0x10ba014d8) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/Expression.cpp:132
#4 0x000000010738c057 in scidb::Expression::compile (this=0x7f9d3847e810, expression=@0x10ba033d0, names=@0x10ba01818, types=@0x10ba01800, expectedType=@0x10ba017f8) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/Expression.cpp:281
#5 0x000000010754cf48 in scidb::ExpressionAggregate::ExpressionAggregate (this=0x7f9d3847e7b0, name=@0x10ba03410, aggregateType=@0x7f9d38438b28, stateType=@0x7f9d38438b28, resultType=@0x7f9d38438b28, accumulateOp=@0x10ba033d0, mergeOp=@0x10ba033c0, initByFirstValue=true) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/BuiltinAggregates.cpp:74
#6 0x0000000107517be3 in scidb::ExpressionAggregate::ExpressionAggregate (this=0x7f9d3847e7b0, name=@0x10ba03410, aggregateType=@0x7f9d38438b28, stateType=@0x7f9d38438b28, resultType=@0x7f9d38438b28, accumulateOp=@0x10ba033d0, mergeOp=@0x10ba033c0, initByFirstValue=true) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/BuiltinAggregates.cpp:80
#7 0x000000010750f56d in scidb::AggregateLibrary::AggregateLibrary (this=0x7f9d3847c220) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/BuiltinAggregates.cpp:286
#8 0x000000010750cca5 in scidb::AggregateLibrary::AggregateLibrary (this=0x7f9d3847c220) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/BuiltinAggregates.cpp:339
#9 0x000000010702eb83 in scidb::Singletonscidb::AggregateLibrary::getInstance () at Singleton.h:73
#10 0x000000010709e09e in scidb::Optimizer::logicalRewriteIfNeeded (this=0x7f9d3846c920, query=@0x7f9d3846c938, node=@0x10ba04b80) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/optimizer/Optimizer.cpp:134
#11 0x00000001070a226d in scidb::HabilisOptimizer::tw_createPhysicalTree (this=0x7f9d3846c920, logicalRoot=@0x10ba04d38, tileMode=true) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/optimizer/HabilisOptimizer.cpp:354
#12 0x00000001070a1b37 in scidb::HabilisOptimizer::optimize (this=0x7f9d3846c920, query=@0x10ba05cd0, logicalPlan=@0x7f9d3882e338) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/optimizer/HabilisOptimizer.cpp:99
#13 0x00000001070c5e19 in scidb::QueryProcessorImpl::optimize (this=0x7f9d3847c1d0, optimizer=@0x10ba05ce0, query=@0x10ba05cd0) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/QueryProcessor.cpp:156
#14 0x0000000107129845 in scidb::SciDBExecutor::executeQuery (this=0x107ef52e0, queryString=@0x10ba06640, afl=false, queryResult=@0x10ba06648, connection=0x0) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/query/executor/SciDBExecutor.cpp:173
#15 0x00000001070132ef in scidb::ClientMessageHandleJob::executeClientQuery (this=0x7f9d38600f50) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/network/ClientMessageHandleJob.cpp:203
#16 0x00000001070117fd in scidb::ClientMessageHandleJob::run (this=0x7f9d38600f50) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/network/ClientMessageHandleJob.cpp:73
#17 0x000000010701f54a in scidb::Job::execute (this=0x7f9d38600f50) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/util/Job.cpp:50
#18 0x000000010702309c in scidb::Thread::_threadFunction (this=0x7f9d3846c780) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/util/Thread.cpp:126
#19 0x0000000107022cdb in scidb::Thread::threadFunction (arg=0x7f9d3846c780) at /Users/tshead/src/scidb-12.10.0.5777-Cheshire-final/src/util/Thread.cpp:107
#20 0x00007fff8b382742 in _pthread_start ()
#21 0x00007fff8b36f181 in thread_start ()
[/code]


#2

One item that comes to mind … how specific a version of Boost does SciDB require? I built with a system-provided Boost 1.52 …

Cheers,
Tim


#3

Hello,

First of all thanks for the effort! I have just discovered the repository and gave it a try, what I got is:

scidb-osx-12.10-mountain-lion [master] % cmake .
-- The C compiler identification is Clang 4.1.0
-- The CXX compiler identification is Clang 4.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- CMAKE_INSTALL_PREFIX Initialized to default setting to: /opt/scidb/12.10
-- Found Subversion: /usr/bin/svn (found version "1.6.18") 
-- Found Git: /usr/local/bin/git (found version "1.8.0.1") 
CMake Error at CMakeLists.txt:83 (message):
  Can not fetch working copy version and can't find version.txt file.


-- Configuring incomplete, errors occurred!

Can you please let me know if you have an idea how to fix this? I’m on a brand new Mountain Lion with software installed only via Homebrew. (cmake for stock SciDB runs just fine, only make crashes with some C++ errors).

Thanks,
Kamil

P.S. I have boost 1.52 installed via Homebrew (not Apple-provided).

UPDATE:

This is no longer an issue. The version.txt file has been added to the GitHub repository. The GitHub issue is here: github.com/tshead/scidb-osx-12. … n/issues/4