GeoRocket 1.2.0

Today, on this lucky Fri­day, the 13th, I’m very happy to an­nounce the next stable open-source ver­sion of GeoR­ocket 1.2.0. We worked hard to make this the best re­lease avail­able yet with a large num­ber of new fea­tures, fixes, and up­dates (see be­low).

GeoR­ocket is a high-per­form­ance data store for geo­spa­tial files that we de­velop at the Fraunhofer In­sti­tute for Com­puter Graph­ics Re­search IGD in Darm­stadt, Ger­many. Its fo­cus lies on the stor­age, in­dex­ing, and ana­lysis of big vec­tor data. GeoR­ocket sup­ports GeoJSON, CityGML (3D city mod­els), GML or any other XML-based geo­spa­tial data format. It is made for the Cloud and de­signed for scalab­il­ity and high per­form­ance. It can handle a large num­ber of re­quests in par­al­lel and sup­ports ar­bit­rar­ily large data sets. GeoR­ocket is a schema-ag­nostic and format-pre­serving data store.

New features

  • We ad­ded a new stor­age back-end: The em­bed­ded data­base H2 stores geo­spa­tial data on your local hard drive but is much faster than the old file sys­tem back-end. We made H2 the de­fault back-end now. Note that in pro­duc­tion en­vir­on­ments, we still re­com­mend us­ing the Mon­goDB back-end as it al­lows for a more scal­able cluster de­ploy­ment.
  • GeoR­ocket sup­ports en­cryp­ted con­nec­tions with SSL/​TLS now. We also ad­ded sup­port for the new HTTP/​2. This al­lows for a much faster cli­ent-server com­mu­nic­a­tion.
  • We ad­ded sup­port for Cross-Ori­gin Re­source Shar­ing (CORS). This al­lows web de­velopers to query the GeoR­ocket HTTP in­ter­face from the browser with JavaS­cript.
  • HTTP com­pres­sion can now be turned on and off.
  • We im­proved the per­form­ance of the XML split­ter.
  • You can now search for gmlId spe­cific­ally. In par­tic­u­lar, we ad­ded sup­port for in­dex­ing gml:id from GML 3.2.
  • We up­graded the em­bed­ded Elast­ic­search ver­sion to 5.6.5. You can still use your own ex­ternal one if you like.
  • The de­fault heap size of the em­bed­ded Elast­ic­search was in­creased.
  • GeoR­ocket now logs pro­gress while im­port­ing and de­let­ing chunks.
  • Er­ror mes­sages from Elast­ic­search are now for­war­ded to GeoR­ock­et’s HTTP in­ter­face.
  • GeoR­ocket prints a fancy ban­ner 🤘 and its server ver­sion on star­tup.
  • We im­proved com­pat­ib­il­ity with Java 9.

Server API

Bug fixes

  • GeoR­ocket now cor­rectly im­ports files with a UTF-8 BOM.
  • GeoJSON files with UTF-8 char­ac­ters are now cor­rectly split.
  • GeoR­ocket now handles empty tags and prop­er­ties cor­rectly.
  • We made sure all res­ults are re­turned when scrolling.
  • We fixed a StackOverflowError that could hap­pen when scrolling with a very large frame size.

Internal changes

  • We up­graded Vert.x to 3.5.1.
  • Lib­rary de­pend­en­cies have been up­dated.
  • We up­graded the Gradle Wrap­per to 4.8.1.
  • We im­proved our in­teg­ra­tion tests and unit tests.
  • We re­placed rx.Single<Void> with rx.Completable where ap­plic­able.
  • All Ob­serv­ables are now cold by de­fault.
  • We re­placed Rx op­er­at­ors by trans­formers.
  • It is now easier to build the Docker im­age.

More information

The new ver­sion is re­com­men­ded for all users. Try GeoR­ocket 1.2.0 while it’s still hot! 🔥


For a com­plete list of fea­tures visit our web­site. There you will also find the user doc­u­ment­a­tion and other in­form­a­tion.

If you have ques­tions, ideas or com­ments re­gard­ing GeoR­ocket or any of our other ser­vices feel free to con­tact us.

Posted by Michel Krämer
on July, 13th 2018.