Mercurial > dive4elements > river
view contrib/make_flys_release/bin/make-opt-package.sh @ 5779:ebec12def170
Datacage: Add a pool of builders to make it multi threadable.
XML DOM is not thread safe. Therefore the old implementation only allowed one thread
to use the builder at a time. As the complexity of the configuration
has increased over time this has become a bottleneck of the whole application
because it took quiet some time to build a result. Furthermore the builder code path
is visited very frequent. So many concurrent requests were piled up
resulting in long waits for the users.
To mitigate this problem a round robin pool of builders is used now.
Each of the pooled builders has an independent copy of the XML template
and can be run in parallel.
The number of builders is determined by the system property
'flys.datacage.pool.size'. It defaults to 4.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Sun, 21 Apr 2013 12:48:09 +0200 |
parents | 520b4fea63bb |
children | f3b2aeb27e4b |
line wrap: on
line source
# Required packages are the build essential stuff make gcc etc. # and: # postgresql-devel libexpat-devel python-devel set -e # This script is intended to be run on suse enterprise linux # Path to the oracle zip archives ORACLE_LOC=/home/intevation # Path to the Source tarballs of gdal-1.9.2.tar.gz proj-4.8.0.tar.gz cx_Oracle-5.1.2.tar.gz SOURCES=/home/intevation/Downloads #mkdir -p $SOURCES #cd $SOURCES #wget http://download.osgeo.org/gdal/gdal-1.9.2.tar.gz #wget http://download.osgeo.org/proj/proj-4.8.0.tar.gz #wget http://downloads.sourceforge.net/project/cx-oracle/5.1.2/cx_Oracle-5.1.2.tar.gz DEVELDIR=/tmp/gdalbuild INSTALL_PREFIX=$DEVELDIR/opt export ORACLE_HOME=$DEVELDIR/opt/instantclient_11_2 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH rm -rf $DEVELDIR mkdir -p $DEVELDIR mkdir -p $SOURCES cd $SOURCES wget http://download.osgeo.org/gdal/gdal-1.9.2.tar.gz wget http://download.osgeo.org/proj/proj-4.8.0.tar.gz wget http://downloads.sourceforge.net/project/cx-oracle/5.1.2/cx_Oracle-5.1.2.tar.gz # Oracle unzip $ORACLE_LOC/instantclient-basic-linux-x86-64-11.2.0.2.0.zip -d $DEVELDIR/opt unzip $ORACLE_LOC/instantclient-sdk-linux-x86-64-11.2.0.2.0.zip -d $DEVELDIR/opt unzip $ORACLE_LOC/instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip -d $DEVELDIR/opt mkdir $ORACLE_HOME/lib cd $ORACLE_HOME/lib ln -s ../libclntsh.so.11.1 . ln -s ../libclntsh.so.11.1 libclntsh.so ln -s ../libnnz11.so . ln -s ../libocci.so.11.1 . ln -s ../libocci.so.11.1 libocci.so ln -s ../libociei.so . ln -s ../libocijdbc11.so . ln -s ../libsqlplusic.so . ln -s ../libsqlplus.so . cd $ORACLE_HOME ln -s libclntsh.so.11.1 libclntsh.so cd $DEVELDIR tar -xf $SOURCES/proj-4.8.0.tar.gz cd proj-4.8.0 ./configure --prefix=$INSTALL_PREFIX && make && make install cd $DEVELDIR tar -xf $SOURCES/gdal-1.9.2.tar.gz cd gdal-1.9.2 patch -l -p0 << "EOF" Index: ogr/ogrsf_frmts/oci/ogrocitablelayer.cpp =================================================================== --- ogr/ogrsf_frmts/oci/ogrocitablelayer.cpp (revision 25700) +++ ogr/ogrsf_frmts/oci/ogrocitablelayer.cpp (working copy) @@ -264,7 +264,7 @@ char **papszResult; int iDim = -1; - oDimCmd.Append( "SELECT COUNT(*) FROM ALL_SDO_GEOM_METADATA u," ); + oDimCmd.Append( "SELECT COUNT(*) FROM USER_SDO_GEOM_METADATA u," ); oDimCmd.Append( " TABLE(u.diminfo) t" ); oDimCmd.Append( " WHERE u.table_name = '" ); oDimCmd.Append( osTableName ); EOF LDFLAGS="-Wl,--no-as-needed" ./configure --with-python --with-oci=$ORACLE_HOME \ --prefix=$INSTALL_PREFIX && make && make install cd $DEVELDIR tar -xf $SOURCES/cx_Oracle-5.1.2.tar.gz cd cx_Oracle-5.1.2 python setup.py build python setup.py install --prefix=$INSTALL_PREFIX cd $DEVELDIR tar -czf flys-importer-opt.tar.gz opt echo "Package is:" readlink -f flys-importer-opt.tar.gz