Skip to content

Commit

Permalink
reinitiliaze master branch (#1)
Browse files Browse the repository at this point in the history
* Initial checkin of the SmallBank port from H-Store oltpbenchmark#41

* More of the SmallBank benchmark. This is a complete mess right now... oltpbenchmark#41

* woonhak, add tpcc foreign key constraints for MySQL

* revert config file

* add dbname to sample_mstpcc_config

* fix tpcc-sqlserver-ddl.sql to work correctly

* add oltpbenchmark windows batch script - TODO: make classpath string using classpath.bat

* fix worong and missing dbtype parameter for postgres

* fix postgres load error

* Enhancement - if set db_type = postgres, then use default ddl script, add tpcc-postgres-ddl.sql (including indexes and constraints)

* Fix loading with district to handle table name correctly (unescaped name)

* change creation order avoid failing drop table because of reference order

* Update tpcc-sqlserver-ddl.sql

Changed 'smalldatetime' to 'datetime'.

'smalldatetime' is an unfair optimization for MS SQL from my point of view.
But the main reason is the incompatibility with the CHBenchmark, which does in Query 10 this:
"AND o_entry_d >= '2007-01-02 00:00:00.000000'"

This line fails in MSSQL with: "Fehler beim Konvertieren einer Zeichenfolge in den smalldatetime-Datentyp" (german, I think the corresponding English error is "Conversion failed when converting character string to smalldatetime data type.")

* fix potential 'data too long for column rev_comment' error.

* Fix SEATS, EPINION, Wikipedia, and Twitter for Oracle Database

* change Epinionsworks.java

* final adjustment

* Fixed spacing bug in tpcc-mysql-ddl.sql

* More fkey fixes for TPC-C

* Make sure that we don't try to initialize the ResultUploader at the end of a benchmark if we don't need it

* Fixed typo in wikipedia-mysql-ddl.sql. We really need better testing for this...

* Hack to ensure unique page titles

* Another hack to make sure that the rev_comments aren't too long

* The length of revision.rev_comment was not correct for the MySQL DDL

* Fixed the WikipediaLoader's generator for the 'watchlist' table. We now have a cap on the max number of entries that each user could have. Previously a user could be watching as many pages as there were in the database. This was obviously unrealistic. I also switch the empty page restriction field to be just 'none'. This was originally needed for Oracle but now it's the same across all DBMSs.

* Minor tweaks

* Fix for TestWikipediaLoader. It was getting stuck trying to load a small database...

* Fixed Travis-CI link

* fix the ResultUploader - if no URL provided it will default to local fs

* fixing the oracle issue making the test fail

* continuous tps monitoring

* minor cmd info

* fixing wikipedia .. but temporarily

* Updated summary output file to include the DB version

* Updated source file license headers from GPL to APL

* Updated the license file

* Updated license headers of the files in the tests directory

* remove proprietary drivers

* Added tbl format to TPCH

* Tpch working with tbl files

* Keep backward comapability with previouse configurations

* commented change

* Removed Oracle specific code in SQLUtil. This might be a mistake...

* Added TIMESTEN

* Update README.md

Delete redundant TPC-CH benchmark list and update its link

* Fixed default DB name oltpbenchmark#102

* Better safety checking for null Wikipedia config parameters oltpbenchmark#102

* Set the AirlineId inside of the composite FlightId to be 8-bits instead of 16

* I take that back. We just need make the AirlineID be 14-bits in FlightID

* Remove insert SQL escape character with MonetDB in TPCCLoader.java

* lowercased postgres table and fkey names on tpcc

* added db2 tpcc sample config

* Fixes to try to get TPC-C working for TimesTen

* Added TPC-C dialects for TimesTen. Apparently they still don't support 'LIMIT'

* Put the JVM heap size back to 2GB

* This is an attempt to optimize our YCSB implementation. We now have a faster random string generator where we don't have to allocate the char array each time. We also don't have to create HashMap to store results anymore. I haven't tested this for real on a DBMS but it passes the tests.

* Minor clean-up

* One more quick fix to remove the Procedure class hashmap look-up per txn in YCSB

* Disable asserts by default in 'execute'

* We now give a big warning if they execute a benchmark with JVM asserts enabled. Added the ability to disable/enable it from the command line. RIP DJ Troubles

* New TextGenerator.randomFastChars() - We only need to generate a single random int and then use bitmasks to grab random chars. It's not crypto random but who cares. We're doing databases over here...

* Switching default TextGenerator.randomString() to use TextGenerator.randomFastChars()

* Added test cases to make sure that our new fast string generator actually produces random strings

* Add ddl for timesten ycsb workload  oltpbenchmark#131

* Removed .settings dir

* Added .settings to ignore list

* First implementation of the NoOp benchmark (inspired by @eric-haibin-lin)

* Fixed up NoOp benchmark. We have to execute a 'SELECT 1' instead of just sending a semi-colon. We also do a better job at printing assertions when there is a problem

* Minor tweak to TestTextGenerator to reduce the likelihood that we get false negatives

* Removed a debug statement

* Refactored code to remove tabs...

* NoOP DDL for SQL Server

* All of the DDL files for each benchmark is now in a sub-directory called 'ddls'. I did this to make the top-level directory for each benchmark less cluttered.

* Refactored LinkBench code so that everything is contained in the top-level benchmark dir. This has bothered me for the last three years. I am glad that I finally just fixed it...

* Added a README for the benchmarks directory

* Working on porting SmallBank benchmark from H-Store. This has been three years in the works... oltpbenchmark#41

* Finished porting all the SmallBank benchmark code. Now we just need to test to see whether it works... oltpbenchmark#41

* Fine-tuning Smallbank code. I'm on this one... oltpbenchmark#41

* Fixed SmallBank logic for checking update query status results. Added sample config file. oltpbenchmark#41

* I've finally finished the port of the SmallBank benchmark in the OLTP-Bench framework. Yes, it took me three years but look I've been busy. I'm trying to run my trap at CMU. Shits been rough.

I would first like to give a shout out to KB. She keeps me out of trouble.

Second, I want to give a shout out to @eric-haibin-lin. He's been on point this semester with helping build our DBMS. There's no denying that.

Finally, and most importantly, shout out to @michaelcahill for sending me the original source code back in 2010 (or whenever it was). Michael is probably one of the best DB devs on the planet. Dope as fuck.

Ok that's it. The port is done. I've tested it on MySQL and Postgres. That's good enough for me. oltpbenchmark#41

* Another quick fix to make sure that we don't have false negatives

* Added HYADAPT benchmark from @jarulraj

* Merging in fixes from the Peloton branch of OLTP-Bench. This mostly contains minor tweaks to TPC-C

* DatabaseType now includes information about whether SQLUtil should escape table/column names or not. This is not used by all of the loaders yet but this should make it easier to port new DBMSs

* Refactored API so that the Loader object is templated based on the target BenchmarkModule. This enables us to have benchmark-specific utility functions in the BenchmarkModule class. Cleaning up TPC-C to make it work on Peloton more easily without breaking other systems

* Removed all of the old code for printing out TPC-C data to a text file from TPCCLoader. This is not needed anymore and it was confusing people...

* I parameterized the Worker abstract class to now be typed to its parent BenchmarkModule. I also made all of the Worker constructors have the same initial signature

* Refactored TPC-C so that we can work around Peloton's problems with timestamps

* Some simple debugging stuff for TPC-C txns

* Fixed problem with TPC-C Delivery with Peloton. Added debug info for TPC-C StockLevel

* fix incorrect statement preparation in YCSB

* Trying to make the SQLStmts in our TPC-C implementation readable...

* Simple typo fix for YCSB

* Switch Peloton to use int for TPC-C STOCK.S_QUANTITY. Debug messages

* Simple for TPC-C on Peloton where we can use the index to find the customer by their last name. Also some minor code refactoring to make it easier to read this beast...

* Checked in debug messages that I shouldn't have

* I was tired of OLTP-Bench always dumping out everything to stdout by default, so I changed DBWorkload to write out to a file in the 'results' directory by default

* Cleaned up histogram output to make them easier to see in the output. Add a warning message when there is a txn with an unknown error code

* Don't attempt to write DBMS conf files if there is no ResultUploader

* Refactored a bunch of code to make things cleaner.
Moved 'dbms_collectors' out of 'util' and into 'api'
Brought in some thread pool code from H-Store so that we can make the benchmark loaders multi-threaded.

* Refactored TPCCLoader to get ready for multi-threaded loaders... We have to change the Loader API to provide multiple connections instead of just one

* I think we had an off by one error in the new TPCCLoader

* This is the start of a new API for supporting multi-threaded loaders. There is a new method Loader.createLoaderThreads() that will return a bunch of Runnables for the framework to deploy.
I am currently riding in the back of the car with KB driving down to Maryland for xmas. So I don't really feel like debugging this on my laptop as we go through the mountains of Penn. I will look at this later tonight when I get to my parent's house to determine whether this works.

Hopefully the good news out of this is that we will finally have multi-threaded TPC-C loading...

* Don't print the stack trace when there is a SQLException

* Reverted AuctionMarkLoader to the previous load() implementation

* Simple log message fix

* Reverted filename change so that we don't use the '-raw' suffix

* Removed rollback code in TPCCWorker.executeWork(). This is the only benchmark that did this. This causes problems because Worker.doWork() would then try to rollback the txn twice. This also makes it so that we correctly report UserAbortExceptions as user aborts and not 'server retry' requests

* Minor formatting fixes...

* Cleaned up LoaderThread API. YCSBLoader is now multi-threaded. Removed some nasty tabs

* Minor clean up of TPC-C benchmark

* Improved error reporting when a LoaderThread fails

* YCSBLoader now makes sure that we use proper escaping for SQLUtil.getInsertSQL() based on the DatabaseType

* You can now configure the number of loader threads in the config XML file

* More DatabaseType escaped-name fixes

* Fixed SmallBankLoader and YCSBLoader for failing test cases.
I forgot to call commit on the last batch in each of the new LoaderThreads.
I added a test-case for ThreadUtil from H-Store.
Fixed TestFileUtil so that it is actually executed (it didn't inherit JUnit).
Other API tweaks and clean ups...

* Removed TransactionTypes.spliterator(). This fixed a building error in Eclipse but I guess it's only works on older versions of Java?

* Bumped up JVM target to 1.7 in build.xml

* Forgot to remove the import for SplitIterator

* Fixes to make sure that we are correctly catching + ignoring empty tables in AbstractTestLoader. Updated TPCCLoader to work correctly on Java 1.7

* Added workaround for Peloton when it gets a SQLException. We will eventually need to remove this

* The interval monitor parameter is now in milliseconds instead of seconds

* Forgot to disable debug message for YCSBLoader

* Simple debug message tweaks...

* Cleaned up TPCCLoader. Removed the old 'jdbc' directory. Everything we need to load a TPC-C database is now in TPCCLoader

* Simple typo fix for TPCCLoader.loadOrders()

* Fixed OORDER secondary index for Peloton

* test: voter - capitalize table name VOTES

* benchmark: sibench - mysql - table name in caps

* benchmark resourcestresser - sample config to use correct transaction name

* linkbench: linktable - ddl syntax + missing PK for counttable

* sibench: table columns in lower case

* Add epinions postgres indexes - closes oltpbenchmark#72

* more VOTES capitialisation in VIEWs

* linkbench - postgresql - no tinyint - small will do

* linkbench: longvarchar not postgres type - node_datasize(128) sets median

* twitter: sample config - refer to file that exists

* Test: sitest - table name is upper case

* linkbench: while load fails may as well do nothing

* wikipedia: no null objref exception without tracefile

* linkbench: Fix path to MotifDataGenerator

* linkbench: another property fix

* Use conn.commit

* linkbench: commit after exec

* missed a commit;

* linkbench: Delete link requires the right args

* Travis: update to actually perform tests on mysql and postgresql

* Travis: fix wikipedia test

* Travis: disable oraclejdk9 for now

* travis: move out of container build for mysql relability

* travis: disable resourcestresser - loader not implemented

* travis: enable twitter

Fixed sample configuration in 23b2401 makes this test
runnable.

* Fixed bug in TPCC when scalefactor < 1

* Fixed SI, SmallBank, and Voter benchmark loaders

* Updated SIBench record count calculation.

* Fixed YCSB table name in dialects file.

* Fixed YCSB table name in DDL.

* Fix sample YCSB config in order to pass tests

* Travis: update test time and scalefactor, disable jpab and linkbench (for now), and drop databases after script.

* Fixed getItemComments wrong number of args - closes oltpbenchmark#155

* Updated wikipedia/chbenchmark sample filenames to make travis config simple. Updated travis config accordingly. Fixes part of oltpbenchmark#153

* Fixed table name in ResourceStresser DDLs

* Updated ResourceStresser config file

* Implemented ResourceStresser loader

* Finishing ResourceStresser impl

* Fixed table names in ResourceStresser procedures

* Updated travis to test ResourceStresser benchmark.

* Fix # keys computation

* Fixing result uploader files

* Checkpoint: adding Postgres metrics collection

* Added Postgres metrics collection

* Added upload configuration file for Postgres

* Added handling for Postgres OOM error.

* Travis: use older image.

* When computing the distribution statistics over a short time interval (e.g., 1 second), experiments running on slower hardware may have intervals where zero queries completed. This fixes the computation to warn about empty statistics (instead of throwing an error) and return -1 for all of the statistics that are normally computed.

* Fixed a few bugs in the result uploader code
  • Loading branch information
mziyabo authored Jul 15, 2017
1 parent ea4c577 commit 8c209c4
Show file tree
Hide file tree
Showing 602 changed files with 16,816 additions and 7,896 deletions.
8 changes: 4 additions & 4 deletions .classpath
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,8 @@
<classpathentry kind="lib" path="lib/commons-logging-1.1.1.jar"/>
<classpathentry kind="lib" path="lib/commons-collections-3.2.1.jar"/>
<classpathentry kind="lib" path="lib/commons-lang-2.6.jar"/>
<classpathentry kind="lib" path="lib/postgresql-9.1-901.jdbc4.jar"/>
<classpathentry kind="lib" path="lib/hsqldb.jar"/>
<classpathentry kind="lib" path="lib/ganymed-ssh2-build250.jar"/>
<classpathentry kind="lib" path="lib/edb-jdbc14-8_0_3_14.jar"/>
<classpathentry kind="lib" path="lib/commons-jxpath-1.3.jar"/>
<classpathentry kind="lib" path="lib/opencsv-2.3.jar"/>
<classpathentry kind="lib" path="lib/log4j-1.2.15.jar"/>
Expand All @@ -34,9 +32,11 @@
<classpathentry kind="lib" path="lib/junit-4.4.jar"/>
<classpathentry kind="lib" path="lib/sqlite-jdbc-3.6.20.1.jar"/>
<classpathentry kind="lib" path="lib/mysql-connector-java-5.1.22.jar"/>
<classpathentry kind="lib" path="lib/sqljdbc4.jar"/>
<classpathentry kind="lib" path="lib/h2-1.3.163.jar"/>
<classpathentry kind="lib" path="lib/commons-io-2.2.jar"/>
<classpathentry kind="lib" path="lib/ojdbc6.jar"/>
<classpathentry kind="lib" path="lib/httpcore-4.3.jar"/>
<classpathentry kind="lib" path="lib/httpclient-4.3.1.jar"/>
<classpathentry kind="lib" path="lib/httpmime-4.3.1.jar"/>
<classpathentry kind="lib" path="lib/postgresql-9.4.1209.jre6.jar"/>
<classpathentry kind="output" path="build"/>
</classpath>
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ bin/
output.raw
output.res
.classpath
.settings
results

## -------------------------------
## Kate Swap Files
Expand Down
284 changes: 0 additions & 284 deletions .settings/org.eclipse.jdt.core.prefs

This file was deleted.

57 changes: 0 additions & 57 deletions .settings/org.eclipse.jdt.ui.prefs

This file was deleted.

164 changes: 161 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,162 @@
dist: trusty
sudo: required
group: deprecated-2017Q2

# lib contains jar files to support running tests
cache:
directories:
- lib

language: java
install: echo "Done"
before_script: echo "Done"
script: ant junit
jdk:
- oraclejdk8
- openjdk8

# oraclejdk9 failures - https://github.com/oltpbenchmark/oltpbench/issues/137
#matrix:
# allow_failures:
# - jdk: oraclejdk9

# Currently oraclejdk8 is mapped to DB=mysql and the
# others are DB=postgres.
#
# a test env of: - DB=mysql TEST=tatp
# duplicated for postgres would of been nice however
# attempting to limit non-junit tests to single jdk with
# matrix:
# exclude:
# - jdk: oraclejdk8
# env: DB=mysql
# - jdk: oraclejdk9
# env: DB=mysql
# - jdk: oraclejdk8
# env: DB=postgres
# - jdk: oraclejdk9
# env: DB=postgres
# Failed to exclude any elements.

# Possibilities for future:
# matrix:
# include:
# - addons:
# mariadb: 5.5
# - addons:
# mariadb: 10.0
# - addons:
# mariadb: 10.1
# - addons:
# mariadb: 10.2
# - addons:
# postgresql: 9.4
# - addons:
# postgresql: 9.5
# - addons:
# postgresql: 9.6
## - addons:
## postgresql: 9.7
# https://docs.travis-ci.com/user/database-setup/#Using-a-different-PostgreSQL-Version
# MariaDB wasn't supported on trusty-containers at time of writing
# This syntax may not be correct.

addons:
postgresql: 9.6

env:
- TEST=junit
- TEST=epinions
- TEST=tatp
- TEST=tpcc
- TEST=voter
- TEST=auctionmark
- TEST=wikipedia
- TEST=ycsb
- TEST=seats
- TEST=sibench
- TEST=noop
- TEST=smallbank
- TEST=twitter
- TEST=resourcestresser

# Missing loader com.oltpbenchmark.benchmarks.resourcestresser.ResourceStresserBenchmark.makeLoaderImpl(ResourceStresserBenchmark.java:58)
# -> org.apache.commons.lang.NotImplementedException: Code is not implemented
# - TEST=resourcestresser

# Missing sample config file
# - TEST=chbenchmark
#
# Missing sample config
# - TEST=hyadapt
#
# Not fully implemented
# - TEST=jpab
#
# Works only for MySQL at this time
# - TEST=linkbench
#

# While mariadb addon isn't used. Remove if using a addon: mariadb
services:
- mysql

install:
- echo $TRAVIS_JDK_VERSION
- if [ $TRAVIS_JDK_VERSION == oraclejdk8 ]; then
DB=mysql ;
else
DB=postgres ;
fi
- if [ $DB == mysql ]; then mysql -e "SELECT VERSION()";
mysql -e "CREATE DATABASE IF NOT EXISTS ${TEST}" ;
mysql -e "CREATE USER 'travis'@'localhost' IDENTIFIED BY 'travis'; GRANT ALL ON *.* TO 'travis'@'localhost'";
elif [ $DB == postgres ]; then psql -c "SELECT VERSION()" -U travis;
psql -c "create database $TEST" -U postgres ;
psql -c "ALTER USER CURRENT_USER WITH PASSWORD 'travis'" -U travis;
fi

# MySQL create user is probably one of the trust-container bugs for MySQL
# Will probably need the following to set a password

# We pass a password here as <password></password> sends no password in the protocol
# rather than the blank one and therefore fails on MySQL.

before_script:
- if [ $DB == mysql ]; then
URLBASE=jdbc:mysql://localhost:3306 ;
DRIVER=com.mysql.jdbc.Driver ;
TYPE=mysql ;
elif [ $DB == postgres ]; then
URLBASE=jdbc:postgresql://localhost:5432 ;
DRIVER=org.postgresql.Driver ;
TYPE=postgres ;
fi

script:
- if [ $TEST == junit ]; then
ant junit;
else
ant build;
config=config/sample_${TEST}_config.xml ;
sed -i
-e "/<dbtype>/c\<dbtype>${TYPE}</dbtype>"
-e "/<driver>/c\<driver>${DRIVER}</driver>"
-e "/<DBUrl>/c\<DBUrl>${URLBASE}/${TEST}</DBUrl>"
-e '/<username>/c\<username>travis</username>'
-e '/<password>/c\<password>travis</password>'
-e '/<scalefactor>/c\<scalefactor>0.5</scalefactor>'
-e '/<terminals>/c\<terminals>3</terminals>'
-e '/<time>/c\<time>60</time>'
-e '/<isolation>/c\<isolation>TRANSACTION_READ_COMMITTED</isolation>'
"${config}";
./oltpbenchmark --bench "${TEST}" --config "${config}" --create true --load true --execute true ;
fi


# With tests, scalefactor and terminals are just to reduce load on travis
# isolation READ_COMMITTED as the TRANSACTIONAL default caused too many failures for now.

after_script:
- if [ $DB == mysql ]; then
mysql -e "DROP DATABASE IF EXISTS ${TEST}" ;
elif [ $DB == postgres ]; then
psql -c "DROP DATABASE IF EXISTS ${TEST}" -U postgres ;
fi
29 changes: 12 additions & 17 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,18 +1,13 @@
oltpbenchmark.com

Project Info: http://oltpbenchmark.com
Project Members:
Carlo Curino <carlo.curino@gmail.com>
Evan Jones <ej@evanjones.ca>
DIFALLAH Djellel Eddine <djelleleddine.difallah@unifr.ch>
Andy Pavlo <pavlo@cs.brown.edu>
CUDRE-MAUROUX Philippe <philippe.cudre-mauroux@unifr.ch>
Yang Zhang <yaaang@gmail.com>

This library is free software; you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation;
either version 3.0 of the License, or (at your option) any later version.
Copyright 2015 by OLTPBenchmark Project

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# OLTPBench

[![Build Status](https://travis-ci.org/oltpbenchmark/oltpbench.png)](https://travis-ci.org/oltpbench/oltpbench)
[![Build Status](https://travis-ci.org/oltpbenchmark/oltpbench.png)](https://travis-ci.org/oltpbenchmark/oltpbench)

Benchmarking is incredibly useful, yet endlessly painful. This benchmark suite is the result of a group of
Phd/post-docs/professors getting together and combining their workloads/frameworks/experiences/efforts. We hope this
Expand All @@ -21,12 +21,11 @@ Together with the framework we provide the following OLTP/Web benchmarks:
* SEATS
* [YCSB](https://github.com/brianfrankcooper/YCSB)
* [JPAB](http://www.jpab.org) (Hibernate)
* [CH-benCHmark](http://www-db.in.tum.de/research/projects/CH-benCHmark)
* [CH-benCHmark](http://www-db.in.tum.de/research/projects/CHbenCHmark/?lang=en)
* [Voter](https://github.com/VoltDB/voltdb/tree/master/examples/voter) (Japanese "American Idol")
* [SIBench](http://sydney.edu.au/engineering/it/~fekete/teaching/serializableSI-Fekete.pdf) (Snapshot Isolation)
* [SmallBank](http://ses.library.usyd.edu.au/bitstream/2123/5353/1/michael-cahill-2009-thesis.pdf)
* [LinkBench](http://people.cs.uchicago.edu/~tga/pubs/sigmod-linkbench-2013.pdf)
* [CH-benCHmark](http://www-db.in.tum.de/research/projects/CH-benCHmark/)

This framework is design to allow easy extension, we provide stub code that a contributor can use to include a new
benchmark, leveraging all the system features (logging, controlled speed, controlled mixture, etc.)
Expand Down
27 changes: 24 additions & 3 deletions build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
<project basedir="." default="build" name="benchmark">
<property environment="env"/>
<property name="debuglevel" value="source,lines,vars"/>
<property name="javac.target" value="1.6"/>
<property name="javac.source" value="1.6"/>
<property name="javac.target" value="1.7"/>
<property name="javac.source" value="1.7"/>

<!-- *************************************** CONFIGURATION *************************************** -->

Expand All @@ -24,6 +24,26 @@
</fileset>
<pathelement path="${java.class.path}"/>
</path>

<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<classpath>
<pathelement location="${lib.dir}/ant-contrib.jar"/>
</classpath>
</taskdef>

<!-- EXEC ASSERTS -->
<condition property="assertions" value="false">
<not><isset property="assertions"/></not>
</condition>
<if>
<equals arg1="${assertions}" arg2="true" />
<then>
<assertions id="assertions"><enable /></assertions>
</then>
<else>
<assertions id="assertions"><disable /></assertions>
</else>
</if>

<!-- *************************************** BUILDING *************************************** -->

Expand Down Expand Up @@ -101,7 +121,8 @@
<arg line="--execute ${execute}" />
<arg line="${extra}" />
<classpath refid='project.classpath' />
<assertions><enable/></assertions>

<assertions refid="assertions"/>
</java>
</target>

Expand Down
Loading

0 comments on commit 8c209c4

Please sign in to comment.