diff --git a/.gitignore b/.gitignore
index b8291a0..cc6e619 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,4 +38,6 @@ target/
test-output
# local test
-pard-server-test/
+pard-main/etc/distribute.sh
+pard-main/etc/pid
+pard-main/etc/test.sql
diff --git a/pard-assembly/pom.xml b/pard-assembly/pom.xml
index d1893e9..117bdeb 100644
--- a/pard-assembly/pom.xml
+++ b/pard-assembly/pom.xml
@@ -14,4 +14,27 @@
${project.parent.basedir}
+
+
+
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+
+
+ src/main/assembly/pard-final.xml
+
+
+
+
+ make-assembly
+ package
+
+ single
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pard-assembly/src/main/assembly/pard-final.xml b/pard-assembly/src/main/assembly/pard-final.xml
index 19194d9..52ef244 100644
--- a/pard-assembly/src/main/assembly/pard-final.xml
+++ b/pard-assembly/src/main/assembly/pard-final.xml
@@ -3,15 +3,40 @@
final
tar.gz
+ zip
dir
true
+ pard-1.0-snapshot
- ${project.basedir}/../pard-server-test
- /bin
+ ${project.basedir}/../pard-main/etc/sbin
+ sbin
0755
0755
+
+ ${project.basedir}/../pard-main/src/main/resources/webapp
+ webapp
+
+
+
+
+ ${project.basedir}/../pard-main/target/pard-server.jar
+ bin
+
+
+ ${project.basedir}/../pard-client/target/pard-client.jar
+ bin
+
+
+ ${project.basedir}/../pard-main/etc/pard.properties
+
+
+
+ ${project.basedir}/../pard-main/etc/jvm.properties
+
+
+
\ No newline at end of file
diff --git a/pard-client/pom.xml b/pard-client/pom.xml
index 66c56d8..033aa52 100644
--- a/pard-client/pom.xml
+++ b/pard-client/pom.xml
@@ -52,7 +52,6 @@
cn.edu.ruc.iir.pard.client.PardClient
- ${main.basedir}/pard-server-test/
diff --git a/pard-main/etc/connector/mysql.properties b/pard-main/etc/connector/mysql.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/pard-main/etc/connector/postgres.properties b/pard-main/etc/connector/postgres.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/pard-main/etc/sbin/pard-client b/pard-main/etc/sbin/pard-client
new file mode 100755
index 0000000..773dd19
--- /dev/null
+++ b/pard-main/etc/sbin/pard-client
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+if [ $# != 2 ] ; then
+ echo "pard-client "
+ exit
+fi
+
+cd `dirname $0`
+
+exec java -jar ../bin/pard-client.jar $1 $2
diff --git a/pard-main/etc/sbin/pard-server b/pard-main/etc/sbin/pard-server
new file mode 100755
index 0000000..10aa381
--- /dev/null
+++ b/pard-main/etc/sbin/pard-server
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+if [ $# != 1 ] ; then
+ echo "pard-server "
+ exit
+fi
+
+cd `dirname $0`
+
+# run in foreground
+if [ $1 == "run" ] ; then
+ if [ -e ../pid ] ; then
+ echo "Pard already started. Please stop it first."
+ else
+ exec java -jar ../bin/pard-server.jar ../pard.properties
+ fi
+ exit
+fi
+
+# run in background
+if [ $1 == "start" ] ; then
+ if [ -e ../pid ] ; then
+ echo "Pard already started. Please stop it first."
+ else
+ nohup java -jar ../bin/pard-server.jar ../pard.properties &
+ pid=$!
+ echo ${pid} > ../pid
+ echo "Pard is running in background as" ${pid}
+ fi
+ exit
+fi
+
+# stop
+if [ $1 == "stop" ]
+then
+ if [ -e ../pid ] && [ -r ../pid ] ; then
+ # read pid
+ pid=$(head -n 1 ../pid)
+ # kill process
+ kill -9 ${pid}
+ # remove file
+ rm ../pid
+ echo "Pard at" ${pid} "is killed."
+ else
+ echo "Pard is not started yet."
+ fi
+ exit
+fi
+
+echo "pard-server "
+exit
\ No newline at end of file
diff --git a/pard-main/pom.xml b/pard-main/pom.xml
index 58f68c6..2de0f7f 100644
--- a/pard-main/pom.xml
+++ b/pard-main/pom.xml
@@ -1,119 +1,118 @@
-
- pard
- cn.edu.ruc.iir
- 1.0-SNAPSHOT
-
- 4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ pard
+ cn.edu.ruc.iir
+ 1.0-SNAPSHOT
+
+ 4.0.0
- pard-main
+ pard-main
-
- ${project.parent.basedir}
-
+
+ ${project.parent.basedir}
+
-
-
-
- cn.edu.ruc.iir
- pard-commons
-
-
- cn.edu.ruc.iir
- pard-communication
-
-
- cn.edu.ruc.iir
- pard-parser
-
-
- cn.edu.ruc.iir
- pard-catalog
-
-
- cn.edu.ruc.iir
- pard-connector-postgresql
-
-
- cn.edu.ruc.iir
- pard-nodekeeper
-
-
- cn.edu.ruc.iir
- pard-optimizer
-
-
-
- io.grpc
- grpc-netty
-
-
-
- org.jboss.marshalling
- jboss-marshalling-serial
-
+
+
+
+ cn.edu.ruc.iir
+ pard-commons
+
+
+ cn.edu.ruc.iir
+ pard-communication
+
+
+ cn.edu.ruc.iir
+ pard-parser
+
+
+ cn.edu.ruc.iir
+ pard-catalog
+
+
+ cn.edu.ruc.iir
+ pard-connector-postgresql
+
+
+ cn.edu.ruc.iir
+ pard-nodekeeper
+
+
+ cn.edu.ruc.iir
+ pard-optimizer
+
+
+
+ io.grpc
+ grpc-netty
+
+
+
+ org.jboss.marshalling
+ jboss-marshalling-serial
+
-
- org.testng
- testng
- test
-
-
-
- org.eclipse.jetty.aggregate
- jetty-all
- 9.2.14.v20151106
-
-
- javax.servlet
- javax.servlet-api
- 3.1.0
-
-
- org.eclipse.jetty
- jetty-jsp
- 9.2.15.v20160210
-
-
+
+ org.testng
+ testng
+ test
+
+
+
+ org.eclipse.jetty.aggregate
+ jetty-all
+ 9.2.14.v20151106
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1.0
+
+
+ org.eclipse.jetty
+ jetty-jsp
+ 9.2.15.v20160210
+
+
-
-
-
- org.apache.maven.plugins
- maven-shade-plugin
-
-
- package
-
- shade
-
-
- pard-server
- true
- allinone
-
-
- *:*
-
- META-INF/*.SF
- META-INT/*.DSA
- META-INT/*.RSA
-
-
-
-
-
- cn.edu.ruc.iir.pard.server.PardServer
-
-
- ${main.basedir}/pard-server-test/
-
-
-
-
-
-
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+ pard-server
+ true
+ allinone
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INT/*.DSA
+ META-INT/*.RSA
+
+
+
+
+
+ cn.edu.ruc.iir.pard.server.PardServer
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index d6adc61..75f6d8b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,38 +1,38 @@
- 4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ 4.0.0
- cn.edu.ruc.iir
- pard
- pom
- 1.0-SNAPSHOT
-
- pard-assembly
- pard-parser
- pard-connector
- pard-catalog
- pard-connector-mysql
- pard-connector-postgresql
- pard-nodekeeper
- pard-main
- pard-communication
- pard-optimizer
- pard-executor
- pard-commons
- pard-client
-
+ cn.edu.ruc.iir
+ pard
+ pom
+ 1.0-SNAPSHOT
+
+ pard-assembly
+ pard-parser
+ pard-connector
+ pard-catalog
+ pard-connector-mysql
+ pard-connector-postgresql
+ pard-nodekeeper
+ pard-main
+ pard-communication
+ pard-optimizer
+ pard-executor
+ pard-commons
+ pard-client
+
-
- 4.6
- false
- true
- ${project.basedir}
- 1
- 1.1.0.Final
- 21.0
- ${main.basedir}/src/checkstyle/checks.xml
-
+
+ 4.6
+ false
+ true
+ ${project.basedir}
+ 1
+ 1.1.0.Final
+ 21.0
+ ${main.basedir}/src/checkstyle/checks.xml
+
@@ -93,181 +93,187 @@
1.0-SNAPSHOT
-
-
- org.antlr
- antlr4-runtime
- ${antlr.version}
-
+
+
+ org.antlr
+ antlr4-runtime
+ ${antlr.version}
+
-
-
- javax.inject
- javax.inject
- ${javax-inject.version}
-
-
- javax.validation
- validation-api
- ${javax-validation.version}
-
+
+
+ javax.inject
+ javax.inject
+ ${javax-inject.version}
+
+
+ javax.validation
+ validation-api
+ ${javax-validation.version}
+
-
-
- com.google.code.findbugs
- jsr305
- 3.0.2
-
+
+
+ com.google.code.findbugs
+ jsr305
+ 3.0.2
+
-
-
- com.google.guava
- guava
- ${guava.version}
-
+
+
+ com.google.guava
+ guava
+ ${guava.version}
+
-
- com.zaxxer
- HikariCP
- 2.6.2
-
+
+ com.zaxxer
+ HikariCP
+ 2.6.2
+
-
-
- io.grpc
- grpc-netty
- 1.4.0
-
-
- io.grpc
- grpc-protobuf
- 1.4.0
-
-
- io.grpc
- grpc-stub
- 1.4.0
-
+
+
+ io.grpc
+ grpc-netty
+ 1.4.0
+
+
+ io.grpc
+ grpc-protobuf
+ 1.4.0
+
+
+ io.grpc
+ grpc-stub
+ 1.4.0
+
-
- io.netty
- netty-all
- 4.1.8.Final
- compile
-
+
+ io.netty
+ netty-all
+ 4.1.8.Final
+ compile
+
-
- org.postgresql
- postgresql
- 9.4.1212.jre7
-
+
+ org.postgresql
+ postgresql
+ 9.4.1212.jre7
+
-
-
- org.slf4j
- slf4j-api
- 1.6.6
-
-
- org.slf4j
- slf4j-log4j12
- 1.6.6
-
-
- log4j
- log4j
- 1.2.16
-
+
+
+ org.slf4j
+ slf4j-api
+ 1.6.6
+
+
+ org.slf4j
+ slf4j-log4j12
+ 1.6.6
+
+
+ log4j
+ log4j
+ 1.2.16
+
-
-
- org.jboss.marshalling
- jboss-marshalling-serial
+
+
+ org.jboss.marshalling
+ jboss-marshalling-serial
2.0.0.Final
-
+
-
-
- org.testng
- testng
- 6.10
-
-
- junit
- junit
-
-
- com.google.inject
- guice
-
-
-
+
+
+ org.testng
+ testng
+ 6.10
+
+
+ junit
+ junit
+
+
+ com.google.inject
+ guice
+
+
+
-
-
-
-
- org.antlr
- antlr4-maven-plugin
- ${antlr.version}
-
-
-
- antlr4
-
-
-
-
- true
-
-
+
+
+
+
+ org.antlr
+ antlr4-maven-plugin
+ ${antlr.version}
+
+
+
+ antlr4
+
+
+
+
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 2.4.3
+
-
- org.apache.maven.plugins
- maven-shade-plugin
- 2.4.3
-
+
+ com.github.os72
+ protoc-jar-maven-plugin
+ 3.3.0.1
+
+
+ generate-sources
+
+ run
+
+
+ com.google.protobuf:protoc:3.0.0
+ 3.3.0
+
+
+ java
+
+
+ grpc-java
+ io.grpc:protoc-gen-grpc-java:1.4.0
+
+
+
+
+
+
-
- com.github.os72
- protoc-jar-maven-plugin
- 3.3.0.1
-
-
- generate-sources
-
- run
-
-
- com.google.protobuf:protoc:3.0.0
- 3.3.0
-
-
- java
-
-
- grpc-java
- io.grpc:protoc-gen-grpc-java:1.4.0
-
-
-
-
-
-
-
-
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+ 2.6
+
+
+
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.8
- 1.8
-
-
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.8
+ 1.8
+
+
org.apache.maven.plugins
@@ -278,39 +284,39 @@
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 2.17
-
-
- validate
-
- check
-
-
- ${check-style.skip}
- ${check-style.failOnViolation}
- true
- true
- ${main.basedir}/src/checkstyle/checks.xml
-
- ${project.build.sourceDirectory}
-
-
- ${project.build.testSourceDirectory}
-
-
-
-
-
-
- com.puppycrawl.tools
- checkstyle
- 7.3
-
-
-
-
-
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 2.17
+
+
+ validate
+
+ check
+
+
+ ${check-style.skip}
+ ${check-style.failOnViolation}
+ true
+ true
+ ${main.basedir}/src/checkstyle/checks.xml
+
+ ${project.build.sourceDirectory}
+
+
+ ${project.build.testSourceDirectory}
+
+
+
+
+
+
+ com.puppycrawl.tools
+ checkstyle
+ 7.3
+
+
+
+
+