@@ -34,3 +34,57 @@ java -cp "/usr/local/geowave/geoserver/webapps/geoserver/WEB-INF/lib/*" mil.nga.
3434
3535These manual configuration steps have to be performed once after the first install of GeoWave. After the initial install you
3636may elect to do further user and namespace creation and configuring to provide isolation between groups and data sets
37+
38+ === Versioning
39+
40+ It's of critical importance to ensure that the various GeoWave components are all the same version and that your client is of the same version
41+ that was used to write the data.
42+
43+ ==== Basic
44+
45+ The RPM packaged version of GeoWave puts a timestamp in the name so it's pretty easy to verify that you have a matched set of RPMs installed.
46+ After an update of the components you must restart Accumulo to get vfs to download the new versions and this should keep everything synched.
47+
48+ .Compare version and timestamps of installed RPMs
49+ [source, bash]
50+ ----
51+ [spohnae@c1-master ~]$ rpm -qa | grep geowave
52+ geowave-cdh5-ingest-0.8.4-201503252335.noarch
53+ geowave-cdh5-core-0.8.4-201503252335.noarch
54+ geowave-cdh5-accumulo-0.8.4-201503252335.noarch
55+ geowave-cdh5-docs-0.8.4-201503252335.noarch
56+ ----
57+
58+ ==== Advanced
59+
60+ When GeoWave tables are first accessed on a tablet server the vfs classpath tells Accumulo where to download the jar file from HDFS.
61+ The jar file is copied into the local /tmp directory (the default general.vfs.cache.dir setting anyway) and loaded onto the classpath.
62+ If there is ever doubt as to if these versions match you can use the commands below from a tablet server node to verify the version of
63+ this artifact.
64+
65+ .Commit hash of the jar in HDFS
66+ [source, bash]
67+ ----
68+ sudo -u hdfs hadoop fs -cat /accumulo/classpath/geowave/geowave-accumulo-build.properties | grep scm.revision | sed s/project.scm.revision=//
69+ ----
70+
71+ .Compare with the versions downloaded locally
72+ [source, bash]
73+ ----
74+ sudo find /tmp -name "*geowave-accumulo.jar" -exec unzip -p {} build.properties \; | grep scm.revision | sed s/project.scm.revision=//
75+ ----
76+
77+ .Example
78+ [source, bash]
79+ ----
80+ [spohnae@c1-node-03 ~]$ sudo -u hdfs hadoop fs -cat /accumulo/classpath/geowave/geowave-accumulo-build.properties | grep scm.revision | sed s/project.scm.revision=//
81+ 294ffb267e6691de3b9edc80e312bf5af7b2d23f <1>
82+ [spohnae@c1-node-03 ~]$ sudo find /tmp -name "*geowave-accumulo.jar" -exec unzip -p {} build.properties \; | grep scm.revision | sed s/project.scm.revision=//
83+ 294ffb267e6691de3b9edc80e312bf5af7b2d23f <2>
84+ 294ffb267e6691de3b9edc80e312bf5af7b2d23f <2>
85+ 25cf0f895bd0318ce4071a4680d6dd85e0b34f6b
86+ ----
87+ <1> This is the version loaded into hdfs and should be present on all tablet servers once Accumulo has been restarted
88+ <2> The find command will probably locate a number of different versions depending on how often you clean out /tmp.
89+
90+ There may be multiple versions copies present, one per JVM, the error scenario is when a tablet server is missing the correct iterator jar.
0 commit comments